无论如何要删除像这样添加的事件监听器:
element.addEventListener(event, function(){/* do work here */}, false);
Run Code Online (Sandbox Code Playgroud)
没有替换元素?
如何制作mailto:链接将在我的程序中注册?
那么我如何在我的程序中处理该事件?
我从快速Google搜索中找到的大多数解决方案都是如何手动执行此操作,但如果他们单击按钮(例如"设置为默认电子邮件客户端"),我需要自动为我的程序用户执行此操作.
删除了对Delphi的引用,因为答案与您的语言无关.
我在使用.NET XSD DataSet和TableAdapter功能的当前应用程序中有一个非常标准的表设置.我的contracts表包含一些标准合同信息,以及一个列primary department.这列是一个外键到我的Departments表,我在那里储存基本department name,id,notes.这是我的SQL Server中的所有设置和功能.
当我使用XSD工具时,我可以立即拖动两个表,它会自动检测/创建这两个表之间的外键.当我在主页上查看合同数据时,这非常有用.
但是,当我转到我的管理页面来修改部门数据时.我通常做这样的事情:
Dim dtDepartment As New DepartmentDataTable()
Dim taDepartment As New DepartmentTableAdapter()
taDepartment.Fill(dtDepartment)
Run Code Online (Sandbox Code Playgroud)
但是,在这一点上抛出异常,说明这里有一个外键引用,我猜是因为我没有Contract DataTable DataSet填充.
我该如何解决这个问题?我知道我可以简单地删除从XSD的外键使事情做工精细,但有没有额外的完整性检查,并具有XSD架构匹配数据库SQL模式是好的.
我正在使用jQuery的ajax代码来加载新页面,但希望他只获取div的html.
我的代码:HTML:
<body>
<div id="content"></div>
</body>
Run Code Online (Sandbox Code Playgroud)
脚本:
$.ajax({
url:href,
type:'GET',
success: function(data){
$('#content').html(data);
}
});
Run Code Online (Sandbox Code Playgroud)
我希望他在另一页上只获得$('div #content')的html.怎么做?
当我在两个字符串之间使用逻辑运算符&&时,为什么它会给我第二个字符串作为输出:
console.log("" && "Dog"); // ""
console.log("Cat" && "Dog"); // "Dog"Run Code Online (Sandbox Code Playgroud)
我意识到有例外0,false,null,undefined,""和NaN,一切被评估为布尔在像上面的一个逻辑表达式真.但为什么输出是第二个字符串而不是第一个?为什么输出不仅仅是"真实",因为它被评估为布尔表达式?
我试图将包含字符串,数字和数字的数组排序为字符串(例如'1','2').我想对这个数组进行排序,以便排序的数组首先包含数字,然后是包含数字的字符串,最后是字符串.
var arr = [9,5,'2','ab','3',-1 ] // to be sorted
arr.sort()
// arr = [-1, 5, 9, "2", "3","ab"] // expected result
//arr = [-1, "2", 5, 9, "ab"] // actual result
Run Code Online (Sandbox Code Playgroud)
我也试过了
var number =[];
var char =[];
arr.forEach(a=>{
if(typeof a == 'number') number.push(a);
else char.push(a);
})
arr = (number.sort((a,b)=> a>b)).concat(char.sort((a,b)=> a>b))
// arr = [-1, 5, 9, "2", "3","ab"] // expected result
// arr = [-1, 5, 9, "2", "ab", "3"]// actual result
Run Code Online (Sandbox Code Playgroud) 我想要这样的事情:
each[i_, {1,2,3},
Print[i]
]
Run Code Online (Sandbox Code Playgroud)
或者,更一般地说,要解构您循环的列表中的任意内容,例如:
each[{i_, j_}, {{1,10}, {2,20}, {3,30}},
Print[i*j]
]
Run Code Online (Sandbox Code Playgroud)
通常,您希望使用Map或其他纯函数构造,并避免使用副作用的非函数式编程样式.但是这里有一个例子,我认为for-each构造非常有用:
假设我有一个将符号与表达式配对的选项(规则)列表,例如
attrVals = {a -> 7, b -> 8, c -> 9}
Run Code Online (Sandbox Code Playgroud)
现在我想制作一个哈希表,在那里我可以将这些符号明显映射到这些数字.我认为没有比这更清洁的方法了
each[a_ -> v_, attrVals, h[a] = v]
Run Code Online (Sandbox Code Playgroud)
在此示例中,我们转换变量列表:
a = 1;
b = 2;
c = 3;
each[i_, {a,b,c}, i = f[i]]
Run Code Online (Sandbox Code Playgroud)
在上述之后,{a,b,c}应评估为{f [1],f [2],f [3]}.请注意,这意味着如果它是一个列表,那么"each"的第二个参数应该保持不被评估.
如果未评估的表单不是列表,则应评估第二个参数.例如:
each[i_, Rest[{a,b,c}], Print[i]]
Run Code Online (Sandbox Code Playgroud)
那应该打印b和c的值.
附录:要正确地执行每个操作,它应该支持Break []和Continue [].我不确定如何实现它.也许它需要以For,While或Do的方式实现,因为这些是唯一支持Break []和Continue []的循环结构.
到目前为止答案的另一个问题是:他们吃Return [] s.也就是说,如果您在函数中使用ForEach循环并希望从循环内的函数返回,则不能.在ForEach循环中发出Return似乎像Continue []一样工作.这只是(等待它)把我扔了一圈.
我正在调试一些东西并在JavaScript中发现了一些奇怪之处:
alert(1=='') ==> false
alert(0=='') ==> true
alert(-1=='') ==> false
Run Code Online (Sandbox Code Playgroud)
隐含的字符串比较0应该为'0'是有意义的.对于所有非零值都是如此,但为什么不为零呢?
我正在用node.js和express编写一个应用程序.
我已经设置了一个默认路由:
app.get('/', function(req, res){
res.sendfile('./views/index.html');
});
Run Code Online (Sandbox Code Playgroud)
当我转到/ localhost:port /时,这工作正常
但是在我输入任何内容之后的URL中,/ localhost:port/blah我得到了404 ERROR,这是有意义的.
我想设置一个默认路由,这样无论我在localhost:port /之后输入的是什么,它都应该返回相同的html文件.
我尝试更改/到*:
app.get('*', function(req, res){
res.sendfile('./views/index.html');
});
Run Code Online (Sandbox Code Playgroud)
但在我这样做后,我开始在控制台中收到此错误,并且没有显示任何内容:
未捕获的SyntaxError:意外的令牌<
在我的所有Javascript文件中:: 3000/scripts/myscript.js:1
不知何故,我的javascript文件显示HTML的内容
===编辑====
我用过这个,它适用于第一级网址:比如loclhost:port/blah
app.use(function(req, res){
res.sendfile('./views/index.html');
});
Run Code Online (Sandbox Code Playgroud)
但是当URL是多级的时,我看到了与前面描述的相同的问题localhost:port/blah/foo这里的问题是路由器在/ blah文件夹下查找所有javascript和CSS文件的公共目录,在这种情况下,不存在.它返回默认的HTML文件.我该如何解决?
==================编辑发布整个代码=========================== ==============
var http = require('http');
var express = require('express');
var api = require('./routes/api');
var mongoose = require('mongoose');
var app = express();
mongoose.connect('mongodb://localhost/mydb');
app.set('port', process.env.PORT || 3000);
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(express.cookieParser('your secret here'));
app.use(express.session());
app.use(app.router);
app.use(express.static(__dirname + '/public'));
app.get('/api/user/:userid', api.getUserInfo);
app.get('/', …Run Code Online (Sandbox Code Playgroud)
function change(){
item = document.getElementById("first");
item.value = "second";
item.id = "second";
}
ob = document.getElementById("first");
ob.addEventListener("click",change);
Run Code Online (Sandbox Code Playgroud)
<input id="first" type="button" value="first">
Run Code Online (Sandbox Code Playgroud)
单击输入时,它变为:
<input id="second" type="button" value="second">
Run Code Online (Sandbox Code Playgroud)
我的要求是编写javascript代码,这样当你点击id为的输入时,second网页就会刷新.也就是说,要更改当前的输入元素:
<input id="second" type="button" value="second">
Run Code Online (Sandbox Code Playgroud)
进入上一个:
<input id="first" type="button" value="first">
Run Code Online (Sandbox Code Playgroud)
这是我的尝试:
function change(){
item = document.getElementById("first");
item.value = "second";
item.id = "second";
}
ob = document.getElementById("first");
ob.addEventListener("click",change);
function previous(){
document.execCommand('Refresh')
}
ob = document.getElementById("second");
ob.addEventListener("click",previous);
Run Code Online (Sandbox Code Playgroud)
<input id="first" type="button" value="first"> Run Code Online (Sandbox Code Playgroud)
error: Uncaught TypeError: Cannot read property 'addEventListener' of null
at line27.
Run Code Online (Sandbox Code Playgroud) javascript ×7
html ×2
string ×2
.net ×1
arrays ×1
database ×1
ecmascript-6 ×1
express ×1
greasemonkey ×1
html5 ×1
jquery ×1
loops ×1
mailto ×1
node.js ×1
numbers ×1
operators ×1
refresh ×1
url-routing ×1
userscripts ×1
webpage ×1
windows ×1
xsd ×1