2014-02-21 89 views
2

我想学习一些JQuery。我正在使用外部js编写我的代码。当我调用2段函数时它工作正常,但是当我调用submit按钮时,它只是再次加载页面。 我的代码如下所示:JQuery不提交按钮

<html> 
<body> 

    <p id="paragraf">This is an internal paragraf</p> 


    Another Example: 
    <p id="paragraftest">This is the external js script</p> 

    <form> 
     <input type="text" name="Submit_test"> 
     <button id="buttontest">Submit</button> 
    </form> 
    <script type="text/javascript" src="jqueryScript/jquery.js"></script> 
    <script type="text/javascript" src="jqueryScript/hide.js"></script> 
</body> 
</html> 

的Javascript:

$('#paragraf').click(function() { 
    $('#paragraf').hide(); 
}); 

$('#paragraftest').click(function() { 
    $('#paragraftest').hide(); 
}); 

$('buttontest').submit(function() { 
    alert("test"); 
}); 

/*我已经有 “”, '' 在buttontest和测试试过,但还是一样的*/ 我也曾尝试与此,但它仍然是一样的。

<form> 
     <input type="text" name="buttontest"> 
     <input type="submit" value=""> 
    </form> 

任何人都可以看到为什么没有发生? 问候 的Mads

回答

1

正确的语法如下:

$('input[name=buttontest]').submit(function() { 
    alert("test"); 
}); 

使用的唯一ID按钮:

$('input#button_id').submit(function() { 
    alert("test"); 
}); 
5

缺少ID选择 - buttontest是按钮的ID,所以你需要使用id-selector选择它(前缀为#

$('#buttontest').submit(function() { 
    alert("test"); 
}); 
+0

搞怪,但这个答案是完全不正确的。 '#buttontest'是一个按钮而不是表单,它根本没有'submit'事件。 – dfsq

+0

完美...感谢很多人。这解决了答案:-) – McDuck4

+0

所以它是不正确的表单一个ID? – McDuck4

1

您应选择具有以下方式按钮:

$('#buttontest') 

您没有使用#,当我们使用它们的ID选择DOM元素时,需要#。肯定这是一个写错误,因为你在其他选择中正确使用它。

0

提交事件是一种形式的事件,你试图将其绑定到一个按钮。

$('form').submit(function() { 
    alert("test"); 
}); 

在一般如果你想提交表单,你应该使用专用的onsubmit形式事件,click事件上的任何按钮。

0

它与现在这个代码:

<form id="form"> 
     <input type="text" name="buttontest"> 
     <input type="submit" value="submit"> 
    </form> 
    <form id="form_1"> 
     <input type="text" name="buttontest"> 
     <input type="submit" value="submit"> 
    </form> 

的Javascript:

$('#form').submit(function() { 
    alert("test"); 
}); 

$('#form_1').submit(function() { 
    alert("test"); 
});