2010-08-16 67 views
0

我想在使用MVC 2时习惯JQuery语法。MVC 2;如何复制JQuery中的Html.EditorFor字段

我想将电话号码从1字段复制到另一个字段。但是下面这行代码的语法是错误的; $("#contractAdministratorContact_Phone").val($("#contactClientContact_Phone").val());

以上字段定义为

<%: Html.EditorFor(model => model.clientContact.Phone)%> 
<%: Html.EditorFor(model => model.contractAdministratorContact.Phone)%> 

当我看网页的源文件,该ID是contractAdministratorContact_Phone和contactClientContact_Phone

我的剧本我在页面底部的定位;

<script language="javascript" type="text/javascript"> 
    $(document).ready(function() { 
     $("#chkCopyContact").click(function() { 
      if ($("#chkCopyContact").is(":checked")) { 
       alert("in!"); 
       $("#contractAdministratorContact_Phone").val($("#contactClientContact_Phone").val()); 
      } 
      alert("done!"); 
     }) 
    }); 
</script> 

那么,我的JQuery设置语句应该改为什么呢?

+1

我没有看到jQuery语句有什么问题 - 它应该将id为'contractAdministratorContact_Phone'的元素的值设置为id为'contactClientContact_Phone'的元素的值。也许它是在错误的时间执行的?你想要什么时候复制电话号码?点击一个按钮?当其他变化?等 – 2010-08-16 15:41:06

+0

我已更新我的问题,以显示jQuery的功能。警报消息框显示。我在复选框上有一个点击事件。 – arame3333 2010-08-16 15:48:22

+0

我希望我能告诉你问题是什么,但是你的代码是好的:)我没有改变你的JavaScript代码,并在http://jsfiddle.net/eNWbS/上做了一个工作示例 - 希望这有助于解决问题。 – 2010-08-16 15:59:41

回答

1

尝试这样的:

$("#contractAdministratorContact_Phone").val($("#clientContact_Phone").val()); 

注意,第一个文本框的ID应该是clientContact_Phone,而不是contactClientContact_Phone在你的榜样(假设HTML辅助代码是正确的)。还要确保:checked条件的计算结果为true,以便执行此代码。

+0

干得好。我应该发现我自己。 – arame3333 2010-08-17 07:34:01

相关问题