我对这个问题感到愚蠢,但为什么我的.submit没有发出警报?
HTML
<div class="buttonbar" style="margin-left:10%">
<button class="btn btn-danger">Cancel</button>
<button class="btn btn-success" id="publish">Publish</button>
</div>
的JavaScript
<script type="text/javascript">
$(document).ready(function() {
$('#publish').submit(function(){
alert("hello");
});
});
</script>
当我点击“发布”时,jQuery不会弹出警报。我做错了什么?
答案 0 :(得分:11)
因为它不是submit
按钮,所以当它不在submit
标记的范围内时,它不会有名为<form>
的事件。
试试click
事件,
$(document).ready(function() {
$('#publish').click(function(){
alert("hello");
});
});
或者您必须在html中进行更改,
<div class="buttonbar" style="margin-left:10%">
<form>
<button class="btn btn-danger">Cancel</button>
<input class="btn btn-success" id="publish" type="submit" value="Publish"/>
</form>
</div>
JS:
$(document).ready(function() {
$('#publish').submit(function(e){
e.preventDefault();
alert("hello");
});
});
答案 1 :(得分:3)
您使用的是<button>
而不是<input type="submit">
并且你没有<form>
提交函数来执行(事实上,仅此一点可能是你的问题)。
答案 2 :(得分:2)
提交是用于表单,单击是您要查找的内容:
$(document).ready(function() {
$('#publish').click(function(){
alert("hello");
});
});
试试JSFiddle
答案 3 :(得分:0)
在上面的示例中,您有
mySys.bat
这对我不起作用,因为你绑定了输入的提交事件。为了使这项工作,我必须设置FORM标签的id属性并绑定到其提交事件。
$(document).ready(function() {
$('#publish').submit(function(e){
e.preventDefault();
alert("hello");
});
});
这至少对我有用:)