我正在运行一些jQuery / JavaScript事件/方法,它们只工作了一段时间,之后整个文档重新获得了它以前的内容。怎么样?
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
//jquery
$("#f").submit(function(){
$("h3").toggle();
//alert("hello");
});
$("button").click(function(){
alert("ZZZZZ");
});
});
</script>
<title>Catalog Nova Grup</title>
</head>
<body>
<center>
<h3 style="color:#00F">Catalog Nova Grup</h3>
</center>
<form id="f">
<select id="s1">
<option>---</option>
<option>ZZZ</option>
</select>
<select id="s2"></select>
<select id="s3"></select>
<input type="submit" id="sb" />
</form>
<button>ZZZ</button>
</body>
</html>
答案 0 :(得分:3)
您可能需要从事件处理程序中return false
或使用e.preventDefault()
,其中e
是传递给事件处理程序的事件对象。
例如,在附加到submit
元素的<form>
处理程序中,您应该执行以下任一操作:
$("#f").submit(function() {
//do your stuff
return false //stop browser following link
});
或:
$("#f").submit(function(e) {
e.preventDefault(); //stop browser following link
//do your stuff
});
修改强> 发生的事情是浏览器正在提交表单,默认情况下导致页面重新加载
答案 1 :(得分:2)
由于表单正在提交,请使用return false;
将其停止。或者,将一个参数添加到提交匿名函数并调用.preventDefault()
。
$(document).ready(function () {
//jquery
$("#f").submit(function () {
$("h3").toggle();
//alert("hello");
return false;
});
$("button").click(function () {
alert("ZZZZZ");
});
});