2013-10-21 104 views
0

我已经在页面(div与类信息)上做了一个表单模板,因为我不想通过ajax获取此值,并更改了值。我有两个按钮与不同的数据ID &数据电子邮件。按钮点击我获取这两个数据,并更改信息的div值。然后,divs内容被提取并显示在demo div中。每次它显示空白值。有什么问题?Jquery获取更改div内容

HTML

<button class="btn" data-id="1" data-email="[email protected]">First Button</button> 
<button class="btn" data-id="2" data-email="[email protected]">Second Button</button> 
    <div class="info"> 
     <input type="text" id="idz" /> 
     <input type="text" id="email" /> 
    </div> 

<div class="demo"> </div> 

jQuery的

$(document).on('click', '.btn', function() { 
    var idz = $(this).data('id'); 
    var email = $(this).data('email'); 

    $('#idz').val(idz); 
    $('#email').val(email); 

    var data = $('.info').html(); 
    $('.demo').html(data); 
}); 

的jsfiddle:http://jsfiddle.net/4D29C/

+1

看到这个问题的答案http://stackoverflow.com/questions/7986026/html-input-is-not -updating-value-attribute-on-change –

回答

1

这是因为该值属性不更新,实时值存储在DOM的价值属性。您将需要更新的属性以获得所需的效果:

$('#idz').val(idz).attr('value',idz); 
    $('#email').val(email).attr('value',email); 

http://jsfiddle.net/4D29C/1/

+0

我应该使用$('#idz').val(idz).attr('value',idz);或$('#idz')。attr('value',idz)很好吗? – Ace

+0

你应该可以在没有'val'的情况下使用'attr' –