日期:2014-05-16  浏览次数:20336 次

jquery 如何设置按钮(input)的onclick事件?
比如开始时有个按钮

<input id="prebt" type="button" value="上一页" onclick="ToPage(2)"/>

这行代码是在程序后台生成的.

和Discuz!NT论坛源码中的做法一样.

页面上所有的东西连同脚本都是由后台代码生成..

然后用jquery.ajax加载到页面上来..

其他的除了ie8不能显示之外..其它浏览器都正常..

现在的问题是 要动态改变 这个上一页按钮 中 onclick的函数..

我尝试了各种办法...都做不出来..

如下例举几个..都是失败的:

JScript code
 
$("#prebt").unbind("onclick",function(){var p= $("#nextbt").parent();$("#nextbt").remove();
     p.append("<input id=\"nextbt\" type=\"button\" value=\"编辑\" onclick=\"ToPage(14)\"/>")});

 


JScript code

$("#prebt").removeAttr("onclick");
$("#prebt").attr("onclick","ToPage(4)");

或者:
$("#prebt").attr("onclick","");
$("#prebt").attr("onclick","ToPage(4)");




JScript code

$("#prebt").removeAttr("onclick");
$("#prebt").click(function(){ToPage(4)}); //此句会导致死循环..不知怎么回事..
//我做的分页功能...这样写导致数据一直在乱跳...





知情者给个正解...谢谢了...弄了五个多小时..实在想不出还有什么法子了

------解决方案--------------------
LZ是不是要这样的效果啊?
$("#prebt").unbind("onclick");
$("#prebt").bind("onclick","ToPage(4)");
------解决方案--------------------
HTML code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript">
//<![CDATA[
function toPage(id){alert(id);}
$(function(){
    $('#btndemo').removeAttr('onclick').unbind('click').click(function(){
        toPage(1);
    })
})
//]]>
</script>

</head>
<body>
<input id="btndemo" type="button" value="click" onclick="toPage(4)" />
</body>
</html>