jQuery-复制文本字段显示错误的值,就像“复制”一样;“检查元件”;(变通吗?)

jQuery-复制文本字段显示错误的值,就像“复制”一样;“检查元件”;(变通吗?),jquery,Jquery,因此,我有一个div,里面有一个字段(input[type=text]),我正在创建这个div内容的副本,并将副本显示给用户以编辑它的值。当他们更新副本的值时,会提交副本,从而更改原始副本的值 问题是,当我删除副本并再次从隐藏div创建新副本时,新副本字段中出现的文本是原始文本(加载页面时),而不是更新到的新文本。原始字段显示其内部的新文本,但当我检查其上的元素时,value属性显示旧文本 换句话说,除了副本中显示的文本和原件的value属性之外,所有内容都是正确的 所以我想知道我是做错了什么,

因此,我有一个
div
,里面有一个字段(
input[type=text]
),我正在创建这个div内容的副本,并将副本显示给用户以编辑它的值。当他们更新副本的值时,会提交副本,从而更改原始副本的值

问题是,当我删除副本并再次从隐藏div创建新副本时,新副本字段中出现的文本是原始文本(加载页面时),而不是更新到的新文本。原始字段显示其内部的新文本,但当我检查其上的元素时,value属性显示旧文本

换句话说,除了副本中显示的文本和原件的value属性之外,所有内容都是正确的

所以我想知道我是做错了什么,还是有什么工作要做

下面是一个代码示例:

<div style="display:none">
    <input type="text" value="test" />
    <a>Submit</a>
</div>
<button class="get">Get value</button>
<button class="show">Show hidden one</button>
<button class="copy">Copy hidden one</button>​
$('button.copy').click(function(){
    $('<br><span>'+$('div').html()+'</span>').appendTo('body');
});

$('a').live('click',function(){
    $('div input').val($('span input').val());
    $('span').remove();
});

$('button.get').click(function(){
    alert($('div input').val());
});

$('button.show').click(function(){
    $('div').show();
});

.val()
不会更新value属性,因此当您执行
.html()
或检查元素时,您看到的是原始html而不是值。如果将上面的代码行更改为:

$('div input').attr("value", $('span input').val());
它应该像你期望的那样工作。在尝试使用
.data
设置数据属性,然后使用
.attr(“数据-