复制表单输入字段在IE中不起作用

时间:2013-01-16 18:36:27

标签: jquery internet-explorer

我成功使用jQuery将第一个表单输入字段(name =“InvoiceTotal”)复制到readonly的第二个表单输入字段(name =“AmountPaid”)。但是,IE(我使用的是IE8)没有重复,第二个字段为空,因为第二个字段需要只读,用户无法自己输入数据。

我使用几乎完全相同的代码复制其他在IE中完美运行的字段 - 这个备用代码的唯一区别是我使用复选框使条件为用户提供选项,如果他们希望复制他们的输入。

我非常感谢任何有关我未看到的建议。

   $(document).ready(function() {      
    $('#InvoiceTotal').change(function() {        
     $('#AmountPaid').val($('#InvoiceTotal').val());
    });
   });


<input name="InvoiceTotal" type="text" id="InvoiceTotal"  />

<input name="AmountPaid" type="text" id="AmountPaid" readonly />

1 个答案:

答案 0 :(得分:0)

保持尝试,我最终采用了不同的方法。我开始使用jQuery作为函数使用“onchange”调用它,但再次发现它不能与IE一起使用。在阅读了许多关于IE如何不能很好地处理“onchange”的文章和帖子后,我转而使用“onblur”。我觉得我觉得的解决方案不是很干净,可能会好得多,但即使在IE中也能正常工作,所以直到我可以回来并尝试更好的代码,这是必须的。

这是工作代码,以防它可以帮助别人。

<html>
<head>

<script type = "text/javascript">
    function getAmount() {
    $('input#AmountPaid').val($('input#InvoiceTotal').val());
    }
</script> 

</head>
<body>

    <input name="InvoiceTotal" type="text" id="InvoiceTotal" onblur="getAmount();" />

    <input name="SomeOtherInput" type="text" />

    <input name="AmountPaid" type="text" id="AmountPaid" readonly />

</body>
</html>