【发布时间】:2013-12-18 17:30:07
【问题描述】:
我有一段时间想弄清楚为什么 jQuery .submit() 无法识别提交。
HTML 表单(实际上是多个表单)成功生成为一个 div,该 div 使用以下 javascript 函数附加到页面(这是从 $(document).ready(function(){} 调用的):
function makeMenu(chambers,bins,values) {
var htmlString = "";
for(var i = 0; i < chambers.length; i++) {
if(bins[i]) {
var link = chambers[i] + " - " + bins[i];
var p = values[i];
}
htmlString += "<form name='entity' id='entity' method='post' action=''>";
htmlString += "<input type='submit' name='get_entity' id='to_php' value='" + link + "' class='text_button' title='value=" + p + "'>";
htmlString += "<input type='hidden' name='tool' value='" + chambers[i] + "'/>";
htmlString += "<input type = 'hidden' name='bin' value='" + bins[i] + "'/>";
htmlString += "</form>";
}
$("#spacer").append("<div class='menu'>" + htmlString + "</div>");
}
提交表单后,我只是想获得一个提醒以显示提交已被识别但它没有到达那里:
$(document).ready(function() {
$('#entity').submit(function() {
alert('Success!');
});
})
我尝试确保提交按钮没有提交作为名称和 ID,并尝试只生成一个表单但没有运气。非常感谢任何帮助。
【问题讨论】:
-
$('#entity').submit()执行时,你认为$('#entity')存在吗? -
另外,元素
ids 必须是唯一的。改用一个类。 -
我遇到了另一个问题。 makeMenu 正在创建多种形式的 class=entity。单击其中一个时,我想使用序列化将腔室和箱信息传递给 php。不幸的是,序列化的字符串包含所有室/箱组合的信息。我需要它只包含点击链接的信息。有没有办法做到这一点?
标签: javascript jquery html forms