1

我是 Web 开发的新手,我正在尝试使用 jquery 和 javascript 处理表单提交。

我的JS

$(document).ready(function () {

 $('#UnitFrom').submit(function (e) {
 alert(); //Works for Chrome and IE... But not in firefox...
 e.preventDefault(); // Form Is not submitted in Chrome and IE.. for firefox it submits the from to same url that i am in..
  });

 });

我的 HTML

<html>
<body>
<form id="UnitFrom">
 <input type="submit" id="CalculateUnit" value="Submit"  />
</form>

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="script.js"></script>
</body>
</html>

处理表单提交的任何替代方法。

4

3 回答 3

2

你应该写:

 $('#UnitFrom').submit(function (e) {
    e.preventDefault(); // prevent default form submission
    alert('some'); // do some stuff
 });

或者

 $('#UnitFrom').submit(function () {
    alert('some');
    return false; // prevent form submission
 });
于 2013-08-06T18:31:53.310 回答
2

在警报中添加一些内容:

alert("TEXT HERE"); 

如果您检查控制台,您应该会看到类似以下的错误:

参数不足 [nsIDOMWindow.alert]

当抛出异常时,方法执行结束而不调用preventDefault,允许表单提交。这就是为什么最好将其放置preventDefault在函数的顶部,但这不是必需的。如果是第一个并且有异常,仍然会阻止默认行为。

于 2013-08-06T18:27:38.033 回答
-1

伙计,你不能拥有alert()第一和比e.preventDefault();

e.preventDefault();必须是第一和alert()第二。

jsfiddle:http: //jsfiddle.net/mpatm/

于 2013-08-06T18:30:34.863 回答