0

html:

<input id="save "type="submit" value="Create" class="btn btn-primary"/>

注册onclick的javascript(IsValid是一个在提交前验证的函数,返回true或false)

$('#save').click(function () {  
 return IsValid();
});

请注意,如果我写,这个完全相同的代码可以工作:

 <input id="save "type="submit" value="Create" class="btn btn-primary" onclick='javascript: IsValid();'/>

这是另一个不修改标记的选项(createForm 是表单)

$('#createForm').submit(function () {   
 return IsValid();
});

为什么 $('').click 没有注册我的事件处理程序?

表格如下所示:

 <form method="post" id="createForm" class="well" action="/ScheduleWorkDay/Create" novalidate="novalidate">
4

3 回答 3

0

您的事件处理程序没有注册,因为表单上没有带有 id 的处理程序save,但是有一个save(带有空格)。删除空间。

<input id="save" type="submit" value="Create" class="btn btn-primary"/>

$('#save').click(function () {  
   return IsValid();
});

应该可以正常工作。

一个 jsFiddle 显示它工作

于 2012-08-31T17:41:50.727 回答
0

可能你的 id 有空格或者你没有使用 document.ready()

这是工作演示

<input id="save" type="submit" value="Create" class="btn btn-primary"/>
$(document).ready(function(){
$('#save').click(function () {  
 alert("invalid");
 });
});

演示

于 2012-08-31T17:45:53.440 回答
0

奥布莱恩先生是对的。问题是

 <input id="save " 

id 名称中有一个额外的空格。谢谢!

于 2012-08-31T18:07:11.667 回答