我现在页面里有一个修改<input type="submit" value="修改" id="update">按钮,
我希望一点这个按钮,将它换成一个提交<input type="submit" value="提交" id="submit">按钮, 所有写了这么一段测试的代码,但是结果让人琢磨不透。
测试代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script src="js/jquery-1.4.min.js"></script>
<script>
$(function(){
$("#update").click(function(){
$("#update").parent().html("<input type='submit' id='submit' value='提交'>");
alert($("#submit").val());//这儿弹出的值是"提交"
});
$("#submit").click(function(){
alert("submit");//但是这个不执行
});
});
</script>
</head>
<body>
<div>
<input type="submit" value="修改" id="update">
</div>
</body>
</html>
当点了提交后确实页面上的按钮发生了变化,但是再点提交的时候,就没任何反应。请大家帮忙看看。
我希望一点这个按钮,将它换成一个提交<input type="submit" value="提交" id="submit">按钮, 所有写了这么一段测试的代码,但是结果让人琢磨不透。
测试代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script src="js/jquery-1.4.min.js"></script>
<script>
$(function(){
$("#update").click(function(){
$("#update").parent().html("<input type='submit' id='submit' value='提交'>");
alert($("#submit").val());//这儿弹出的值是"提交"
});
$("#submit").click(function(){
alert("submit");//但是这个不执行
});
});
</script>
</head>
<body>
<div>
<input type="submit" value="修改" id="update">
</div>
</body>
</html>
当点了提交后确实页面上的按钮发生了变化,但是再点提交的时候,就没任何反应。请大家帮忙看看。
解决方案 »
- 求Qunar、携程之类的城市选择框效果
- 大家有没有js时间倒计时的,防止刷新的
- 菜鸟求助,关于javascript对表格进行操作?
- 奇怪的需求,谢谢
- 请教高手,利用javascript如何遍历注册表的目录???
- ~[100分]急~在线等,JS有关dropdownlist日期选择问题~帖子在别的版块~~发错地方了~:(
- 脚本界面问题
- Extjs加载数据时改变显示的样式
- 这样的正则式如何写?
- 如何在textarea里添加表情图片?
- 请教:javascript访问禁止,如何解决,感谢!
- 使用jquery validate的时候无法触发 鼠标离开的时候进行验证?我设置了onfocusout为true.但是还是不行 。求教
$(function(){
$("#update").click(function(){
$("#update").parent().html("<input type='submit' id='submit' value='提交'>");
alert($("#submit").val());//这儿弹出的值是"提交"
$("#submit").click(function(){//把新生成的input的事件绑定放在该元素插入dom结构中后面就可以了
alert("submit");//但是这个不执行
});
});
});
你把事件绑定放在$(function(){})里面的话一开始是没有这个input的,所以事件不会触发。或者像下面这样用live或者delegate来绑定submit的事件$(function(){
$("#update").click(function(){
$("#update").parent().html("<input type='submit' id='submit' value='提交'>");
alert($("#submit").val());//这儿弹出的值是"提交"
});
$("#submit").live('click',function(){//这里用live就可以了。不过好像JQuery什么版本之后live方法被取消掉了,用delegate方法,具体的自己去查一下。
alert("submit");//但是这个不执行
});
});
$(function(){
$("#update").click(function(){
$("#update").parent().html("<input type='submit' id='submit' value='提交'>");
alert($("#submit").val());//这儿弹出的值是"提交"
});
//你在这里想给 #submit 注册一个 click 事件,但是当你在注册的这一瞬间,#submit 还不存在呢!
$("#submit").click(function(){
alert("submit");
});
});
newBtn.bind('click',function(){
//..click handler code
});
$("#update").parent().empty().append(newBtn);
alert($("#submit").val());//这儿弹出的值是"提交"
});