每次提交表单时,我都尝试获取按钮(输入字段或按钮字段(值。 我想我遇到了一些逻辑问题,因为第二个不起作用。
这是在jsFiddle上http://jsfiddle.net/uqj88/23/
这是专门用于无法正常工作的部分。 如果它没有找到类型为提交的输入,它甚至似乎不会查找按钮元素。
$('form').submit(function () {
if ($(this).children("input[type='submit']") != "") {
submitButton = $(this).children("input[type='submit']");
if (submitButton.attr("value") != ""){
linkText = submitButton.attr("value") + " - Button";
}
else if ((submitButton.attr("value") === "") && (submitButton.prop("id") != "")) {
linkText = submitButton.prop("id") + " - Button";
}
else if ((submitButton.attr("value") === "") && (submitButton.prop("class") != "")) {
linkText = submitButton.prop("class") + " - Button";
}
else {
linkText = "Form Submitted - Button";
}
}
else if ($(this).children("button") != "") {
submitButton = $(this).children("button");
linkText = submitButton.text() + " - Button";
}
window.alert(linkText);
});
这一行:
$(this).children("input[type='submit']") != ""
应该是:
$(this).children("input[type='submit']").length
jQuery对象始终是对象,无论它们是否包含元素。对象永远不会等于 ""
。
对 else if 语句重复相同的更改。