我正在网上打猎,我找不到直接的答案。我有很多表格。我不是要为它们分配唯一ID,而是要捕获import vincent
vincent.core.initialize_notebook()
geographic_data = [{
"name": "states",
"url": "https://raw.githubusercontent.com/wrobstory/vincent_map_data/master/us_states.topo.json",
"feature": "us_states.geo"
}]
vis = vincent.Map(
geo_data = geographic_data,
scale = 1000,
projection = "albersUsa"
)
vis.display()
事件并从submit
中取出id。但我无法捕获this
事件。
现在我有:
submit
,表单代码如下:
$('#trainingRecords tr td form').on('submit', function(e) {
alert('here'); // doesn't fire
e.preventDefault();
if (confirm("You're about to delete this training record. Sure?")) {
$(this).submit();
}
return;
});
为什么我没有捕获提交事件? 我错过了什么?
编辑添加:我尝试在提交按钮中添加一个on('click')处理程序。这也行不通。表单提交,但函数没有被触发。
答案 0 :(得分:2)
也许就像这样
$('form').on('submit', function(e){
//prevent form submission
e.preventDefault();
var id = this.id;
});
答案 1 :(得分:0)
小学生吼叫。我将事件监听器附加到DOM对象,然后然后创建DOM对象。我将事件监听器包装在一个doc ready块中,一切都很顺利。当然除了使用提交事件然后解雇它,创建一个无限循环。我把它改为点击。
所以这个:
$('#trainingRecords tr td form').on('submit', function(e) {
alert('here'); // doesn't fire
e.preventDefault();
if (confirm("You're about to delete this training record. Sure?")) {
$(this).submit();
}
return;
});
成了这个:
$(function() {
$('.trainingDelete').on('click', function(e) {
e.preventDefault();
if(confirm("You're about to delete this training record. Sure?")) {
$(this).submit();
}
return;
});
});
所有这一切。