<span><input id='inpt1' type='hidden'></span><input id='inpt2' type='text'><button id='btn1' >改变</button>
<script type='javascript'>
$(function() {
$("#btn1").click(function() {
var txt_inpt=$("#inpt2").val();
var txt_inpt=$("#inpt1");
if(txt_inpt!="") {
txt_inpt.parent().empty();
txt_inpt.parent().html("<input id='inpt1' type='hidden' value="+txt_inpt+">" +txt_inpt);
}
});
});
</script>
html()文档是不可自定义id的 也就是说 input的父元素span那里在html生成时不能加id之类的,要做的就是 当点击按钮时,把input2的值传给 input1并且在input1后面显示出来, 自己弄的这个在html里出来代码了,但是页面上没有显示!!!!
该怎么弄呢?
$("#btn1").click(function() {
var txt_inpt=$("#inpt2").val(); //
var txt_inpt=$("#inpt1"); //这边定义2次不懂什么意思
第二个 写错了
inpt_txt=$("#inpt1");
inpt_txt.parent().html("<input id='inpt1' type='hidden' value="+txt_inpt+">" +txt_inpt);
<!DOCTYPE HTML>
<html>
<head>
<meta charset="gb2312" />
<title></title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<span><input id='inpt1' type='hidden'></span><input id='inpt2' type='text'><button id='btn1'>改变</button>
<script type="text/javascript">
$(function() {
$("#btn1").click(function() {
$('#inpt1').val( $('#inpt2').val() ).parent().append( $('#inpt2').val() )
});
});
</script>
</body>
</html>
楼主没你这样的写法。。
<script type="text/javascript">
或者
<script>
嗯 标记手打了 漏了 这里 $('#inpt1').val( $('#inpt2').val() ).parent().append( $('#inpt2').val() )append 追加的话,如果再点 button ,这里的值会累加到后面吧 ,一开始基本是这样做的,但是要的是 inpt1后面的显示要替换
$("#btn1").click( function() {
var v2 = $("#inpt2").val();
if (v2 != '') {
var inpt1 = $("#inpt1");
inpt1.val(v2);
inpt1.parent().empty().append(inpt1).append(v2);
}
});
});
还是 自己 不是熟练直接替换 inpt1.parent().html()就能了inpt1.parent().html("<input id='inpt1' type='hidden' value='"+inpt2.val()+"'>" + inpt2.val());
自己弄的时候 inpt2.val(),这里写错了,搞的浏览器 一直读取中!calmcrime 代码简洁很让人受启发,十分感谢!