我一直试图让这段代码起作用。它应该在结果范围内返回“委员会警报添加”,但它会继续进入处理页面。处理页面成功,只是回声成功或失败。
这是表格
<div class="addbox">
<p>Select Committees Below</p>
<form id="alertForm" action="process.php" method="post">
<input type="hidden" name="userid" value="<?php echo $userid; ?>" />
<input type="text" id="committeeid-input" name="committeeid" />
<button id="sub" name="addAlert" value="addAlert">Add Alert</button>
<script type="text/javascript">
$(document).ready(function() {
$("#committeeid-input").tokenInput("http://www.orestarjunkie.com/list.php");
});
</script>
</form>
<span id="result"></span>
</div>
这是js
$("#sub").click( function() {
$.post( $("#alertForm").attr("action"),
$("#alertForm :input").serializeArray(),
function(info){ $("#result").html(info);
return false;
});
});
$("#alertForm").submit( function() { event.preventDefault(); });
我试过返回false,但是我读过的所有内容都说已经折旧并使用了preventDefault。
标记
答案 0 :(得分:0)
如果不测试我的想法,那就是按钮上有一个点击处理程序。这最终会冒泡并导致提交事件。您还添加了另一个提交事件处理程序,在提交时将不执行任何操作。我认为你需要做的是阻止你的点击事件冒泡,导致提交。
$("#sub").click( function(event) {
$.post($("#alertForm").attr("action"),
$("#alertForm :input").serializeArray(),
function(info){
$("#result").html(info);
return false;
});
event.preventDefault();
});
忘掉第二个事件,它什么都不做。