-------------------------------------javascript中用Jquery注册button的click事件不能响应----------------------------------------------
<script language="javascript" type="text/javascript" >
// 登录按钮的响应事件
$("login").click(function() {
alert("hello")
//用jquery中的ajax方法,向服务器提交请求
$.ajax({
type: "POST",
url: "loginServlet",
data: "userId="+$("#userId").val()+"&password="+$("#password").val(),
dataType:"text",
success: callback
});
});
//返回data数据的回调方法
function callback(data){
alert("hello")
//取得jquery返回的data数据对象
var jqueryObj=$(data);
var text=jqueryObj.text();
alert(text);
//取得用于显示登陆信息的节点
var resultObj= $("#result");
resultObj.html(text);
}
// 重置按钮的响应事件
$("#reset").click(function() {
$("#userId").attr("value", "");
$("#password").attr("value", "");
});
</script>
解析:这是因为html页面在装载的时候是一行一行解析的并且只解析一次,所以在页面装载后你单击你注册的按钮的时,他找不到单击事件的响应函数,所以无法执行
解决方法:把注册的单击事件写在函数中或写在ready()函数中因为ready()在转载时不时只解析一次并且不是解析全部元素。
在JavaScript中使用jQuery为登录按钮(login)注册click事件时遇到响应不生效的问题。原因是HTML页面加载时仅解析一次,点击按钮时找不到对应的事件处理函数。解决方案是将事件绑定放在函数内或者使用$(document).ready()来确保在页面元素完全加载后绑定事件。此外,还定义了重置按钮(reset)的点击事件,用于清空输入框内容。
3575

被折叠的 条评论
为什么被折叠?



