Javascript “提交”按钮单击“不发射”
我有一个这样的表单,我试图让提交按钮显示一个警报,但它似乎没有做任何事情,我在控制台中没有错误。我已经包含了所有必需的jQuery,因为我在页面的另一部分中有一个类似的表单,输入提交工作正常,但这个表单似乎没有Javascript “提交”按钮单击“不发射”,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我有一个这样的表单,我试图让提交按钮显示一个警报,但它似乎没有做任何事情,我在控制台中没有错误。我已经包含了所有必需的jQuery,因为我在页面的另一部分中有一个类似的表单,输入提交工作正常,但这个表单似乎没有 <div id="div_1" style="display:none;"> <form id="form1"> <fieldset style="border:0;">
<div id="div_1" style="display:none;">
<form id="form1">
<fieldset style="border:0;">
<div>
<label for="name">Name</label>
<input id="name" name="name" placeholder="First name" required type="text">
</div>
<div>
<input id="submit-button" type="submit" value="Submit">
</div>
</fieldset>
</form>
<div>
<button id="close" type="submit" value="Close">
</div>
</div>
确保在元素位于doctree中之后运行javascript 使用此选项,而不仅仅是js:
$(document).ready(function())
{
$("#submit-button").click(function(){
alert("boo");
});
}
这将确保加载DOM树,然后绑定click事件。如果在JS文件中绑定click事件,它可能会在元素进入DOM树之前加载,使jQuery选择器无法找到元素(因此click事件不会触发,因为它没有绑定)。可能重复的请发布一个最小值,您面临的问题的可验证示例。为什么在
input id=name
之后关闭div标记?@maksh抱歉,我忘记在上面的示例中添加div。弹出窗口是动态创建的吗?因为如果在javascript中创建一个弹出窗口,那么单击事件将不会被绑定。我有两个div,因此在第一个div中单击submit时,会显示div 1,隐藏div 2,它会通过ajax发布数据,并将其替换为以下代码:$('#div').html($('#div#u 1').html())代码>但是我在那个div中有一个close按钮,它有一个click事件,并且可以工作!
$(document).ready(function())
{
$("#submit-button").click(function(){
alert("boo");
});
}