Tag: JavaScript

在AngularJS中使用相对path进行服务调用

我有下面的代码,这工作正常,直到我部署到testing服务器: $scope.getUserList = function (userName) { $http({ method: "get", url: "GetUserList", params: { userName: userName } }). success(function (data) { $scope.users = data; }). error(function () { alert("Error getting users."); 问题是我部署到一个虚拟目录,并且下面的调用尝试从服务器根打到GetUserList。 这是有道理的,我知道有很多方法可以解决这个问题。 我想知道的是在Angular中以便携和可维护的方式引用服务URL的正确方法。

如何遍历包含对象的数组并访问它们的属性

我想遍历数组中包含的对象,并更改每个对象的属性。 如果我这样做: for (var j = 0; j < myArray.length; j++){ console.log(myArray[j]); } 控制台应该调出数组中的每个对象,对吧? 但实际上它只显示第一个对象。 如果我在控制台之外logging数组,那么所有对象都会出现,所以肯定会有更多内容。 无论如何,这是下一个问题。 如何使用循环访问数组中的Object1.x? for (var j = 0; j < myArray.length; j++){ console.log(myArray[jx]); } 这返回“未定义”。 循环之外的控制台日志告诉我,对象都具有“x”的值。 我如何在循环中访问这些属性? 我被推荐到其他地方使用单独的数组为每个属性,但我想确保我已经用尽了这条道路。 谢谢!

在AngularJS的ng-repeat循环中绑定ng-model

我试图处理ng-repeat循环内部的作用域问题 – 我浏览了很多问题,但还没能完成代码的工作。 控制器代码: function Ctrl($scope) { $scope.lines = [{text: 'res1'}, {text:'res2'}]; } 视图: <div ng-app> <div ng-controller="Ctrl"> <div ng-repeat="line in lines"> <div class="preview">{{text}}{{$index}}</div> </div> <div ng-repeat="line in lines"> <– typing here should auto update it's preview above –> <input value="{{line.text}}" ng-model="text{{$index}}"/> <!– many other fields here that will also affect the preview –> </div> […]

如何在Web页面加载时自动将焦点设置为文本框?

好吧,这一定是非常容易的,但我真的不知道该怎么做。 如何在Web页面加载时自动将焦点设置为文本框? 有没有一个HTML标签来做到这一点,还是必须通过JavaScript来完成?

修剪string的开头和结尾的空格

我试图find一种方法来修剪标题string的开头和结尾的空格。 我正在使用这个,但它似乎并没有工作: title = title.replace(/(^[\s]+|[\s]+$)/g, ''); 有任何想法吗?

Javascript命令在execCommand中作为纯文本粘贴

我有一个基于execCommand的基本编辑器,下面介绍这个示例。 有三种方法在execCommand区域内粘贴文本: Ctrl + V 右键点击 – >粘贴 右键单击 – >粘贴为纯文本 我想只允许粘贴纯文本而不使用任何HTML标记。 我如何强制前两个动作粘贴纯文本? 可能的解决scheme:我能想到的方式是设置(Ctrl + V)的键盘事件监听器,并粘贴HTML标签。 这是最好的解决scheme吗? 是否防止粘贴任何HTML makup? 如何添加侦听器右键单击 – >粘贴?

有Facebook的sharer.php更改为不再接受详细的参数?

我们已经打开了一个共享popup窗口(通过window.open)的URL像 https://www.facebook.com/sharer/sharer.php?s=100&p[title]=EXAMPLE&p[summary]=EXAMPLE&p[url]=EXAMPLE&p[images][0]=EXAMPLE 直到上个月的某个未知点,一切都很好。 现在发生的事情是; popup对话框出现,并正确包括由查询string参数提供的标题,描述,图像和URL,但是当提交post时,在Facebook上产生的贴子缺less标题,描述和图像,尽pipe它仍然链接到正确的url。 有谁知道是否有最近的变化,可能突然停止这个工作? 抢先一些常见的反应: “sharer.phpurl被弃用” – 使用似乎继续下去,似乎共识是它基本上被认为是坚持 – 我还没有看到任何具体的迹象表明,它应该突然停止工作 – 可能已经错过了一些东西 “使用JavaScript SDK /这些OG元标签” – 在我的具体情况下是不可能的 – 只要相信我…我可以解释你是否真的想要,但实际上并不相关。 “使用提要对话框” – 由于缺乏FB页面附件的发布支持,因此不合适

使用jQuery来获取没有path的文件input的选定文件名

我用这个: $('input[type=file]').val() 以获取选定的文件名,但它返回完整path,如“C:\ fakepath \ filename.doc”中所示。 “假path”部分实际上是在那里 – 不知道是否应该是,但这是我第一次使用file upload的文件名。 我怎样才能得到文件名(filename.doc)?

为什么{} + {}只能在客户端使用NaN? 为什么不在Node.js中?

当[] + []是空string时, [] + {}是"[object Object]" , {} + []是0 。 为什么是{} + {} NaN? > {} + {} NaN 我的问题不是为什么({} + {}).toString()是"[object Object][object Object]"而NaN.toString()是"NaN" , 这部分已经有答案了 。 我的问题是为什么这只发生在客户端? 在服务器端( Node.js ) {} + {}是"[object Object][object Object]" 。 > {} + {} '[object Object][object Object]' 总结 : 在客户端: [] + [] // Returns "" […]

在Javascript中声明数组时,最好的做法是什么?

当我需要声明一个新的数组时,我使用这个表示法 var arr = new Array(); 但是当在线testing时,例如在jsbin上 ,一个警告会告诉我“使用数组文字符号[]”。 我没有find一个避免使用构造函数的理由。 在某种程度上比使用[]吗? 或者这是不好的做法? 有没有很好的理由使用var arr = []; 而不是var arr = new Array(); ?