我将以下数据输入给select2
data = [{
"id": "all",
"text": "All",
"children": [{
"id": "item1",
"text": "item1"
}, {
"id": "item2",
"text": "item2"
}]
}];
Run Code Online (Sandbox Code Playgroud)
我正在将select2初始化为:
$(parent).select2({"data":data});
Run Code Online (Sandbox Code Playgroud)
现在选择值" item1 ",我做到了
$(parent).select2("val",["item1"]);
Run Code Online (Sandbox Code Playgroud)
但是,不是值" item1 "值而是" 全部 "被选中.如何选择value item1?
我的代码中有地方,我有这个:
<input data-ng-disabled="SOME_SCOPE_VARIABLE" />
Run Code Online (Sandbox Code Playgroud)
我也希望能够像这样使用它:
<input data-ng-autofocus="SOME_SCOPE_VARIABLE" />
Run Code Online (Sandbox Code Playgroud)
甚至更好,模仿ng-style的完成方式:
<input data-ng-attribute="{autofocus: SOME_SCOPE_VARIABLE}" />
Run Code Online (Sandbox Code Playgroud)
当前版本的AngularJS中是否存在这种情况?我注意到代码中有一个BOOLEAN_ATTR,它获取AngularJS支持的所有attr.我不想修改它,因为害怕更改版本而忘记更新.
我有两个集合,对象有一个公共密钥"userId".如下:
var _= require('lodash');
var a = [
{ userId:"p1", item:1},
{ userId:"p2", item:2},
{ userId:"p3", item:4}
];
var b = [
{ userId:"p1", profile:1},
{ userId:"p2", profile:2}
];
Run Code Online (Sandbox Code Playgroud)
我想基于"userId"合并它们以产生:
[ { userId: 'p1', item: 1, profile: 1 },
{ userId: 'p2', item: 2, profile:2 },
{ userId: 'p3', item: 4 } ]
Run Code Online (Sandbox Code Playgroud)
到目前为止我有这些:
var u = _.uniq(_.union(a, b), false, _.property('userId'));
Run Code Online (Sandbox Code Playgroud)
结果如下:
[ { userId: 'p1', item: 1 },
{ userId: 'p2', item: 2 },
{ userId: 'p3', item: 4 …Run Code Online (Sandbox Code Playgroud) 如何在JavaScript中获得下周一?我在互联网上找不到任何相关内容,我也尝试过很多代码并对此有所了解但我无法真正做到这一点.
这是我的代码:
var d = new Date();
var day = d.getDay();
d = new Date(d.setDate(d.getDate() + day + (day == 0 ? -6 : 2)));
Run Code Online (Sandbox Code Playgroud) 我们遇到了一个奇怪的问题,我们不确定究竟是什么导致它.让我详细说明这个问题.假设我们有两个不同的html页面a.html和b.html.还有一个用index.html编写的小脚本:
<html>
<head>
<script>
function reloadFrame(iframe, src) {
iframe.src = src;
}
</script>
</head>
<body>
<form>
<iframe id="myFrame"></iframe>
<input type="button" value="Load a.html" onclick="reloadFrame(document.getElementById('myFrame'), 'a.html')">
<input type="button" value="Load b.html" onclick="reloadFrame(document.getElementById('myFrame'), 'b.html')">
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
服务器组件不断更新文件a.html和b.html.问题是两个文件的内容在服务器端成功更新.如果我们打开,我们可以看到更新的更改,但客户端获取的旧内容未显示更新的更改.
任何的想法?
客户端正在使用Sharetribe,它允许您通过管理员添加自定义JS,但仅限于头部.我希望我的脚本在jQuery之后加载,但jQuery在主体的末尾加载.如何在doc加载后编写将主要脚本添加到最后的vanilla JS?
我试过这个:
<script>
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://cdn...";
document.body.appendChild(script);
var script2 = document.createElement("script");
script2.type = "text/javascript";
script2.text = "$(SOME.CODE.HERE);"
document.body.appendChild(script2);
</script>
Run Code Online (Sandbox Code Playgroud)
但它在文档加载完成之前执行(特别是在jQuery可用之前).我能想到的唯一一件事是设置一个计时器,但这似乎有点儿.
有什么建议?
在我的AngularJS应用程序中,我有一个基于WebSocket的服务.如果WebSocket连接断开,我想完全"重启"应用程序(从$ route转到默认页面,重新创建服务等).这可以实现吗?这就是我的开始,但从那时起我不知道如何继续:
模块:
(function () {
angular.module('mainModule', ['ngRoute'])
.config(['$routeProvider', function ($routeProvider) {
$routeProvider.
when('/home', {
templateUrl: 'partials/home.html',
controller: 'appController'
}).
when('/register', {
templateUrl: 'partials/register.html',
controller: 'appController'
}).
otherwise({
redirectTo: '/home'
});
}]);
}());
Run Code Online (Sandbox Code Playgroud)
服务:
(function () {
var app = angular.module('mainModule');
app.service('$wsService', ['$q', '$window', function ($q, $window) {
$window.console.log("WebSocket SERVICE: started");
var self = this;
var ws = new WebSocket("ws://127.0.0.1:9090");
this.isConnected = function (m) {};
ws.onopen = function () {
$window.console.log("WebSocket SERVICE: connected");
self.isConnected(true);
};
ws.onmessage = function (m) { …Run Code Online (Sandbox Code Playgroud) 有没有办法在JavaScript中检索函数的默认参数值?
function foo(x = 5) {
// things I do not control
}
Run Code Online (Sandbox Code Playgroud)
有没有办法获得x这里的默认值?最理想的是,像:
getDefaultValues(foo); // {"x": 5}
Run Code Online (Sandbox Code Playgroud)
请注意,toString该函数不起作用,因为它会在非常量的默认值上中断.
我有一个字符串"1,23,45,448.00",我想用小数点替换所有逗号,用逗号替换所有小数点.
我要求的输出是"1.23.45.448,00"
我试图取代,通过.如下:
var mystring = "1,23,45,448.00"
alert(mystring.replace(/,/g , "."));
Run Code Online (Sandbox Code Playgroud)
但是,在那之后,如果我尝试.用,它替换它也会替换第一个被替换.为,导致输出为"1,23,45,448,00"
<script src="jquery.js"></script>
<button class="hello bello jello">start text</button>
<script>
$("button").on("click", function(event) {
var lo = event.target.classList
console.log(lo.indexOf("hello"))
})
</script>
Run Code Online (Sandbox Code Playgroud)
我期望打印上面的代码片段,0但它抛出了一个错误lo.indexOf is not a function.
event.target.classList不是作为数组输入的吗?
javascript ×9
angularjs ×2
jquery ×2
arrays ×1
collections ×1
date ×1
dom ×1
ecmascript-6 ×1
html ×1
iframe ×1
lodash ×1
merge ×1
regex ×1