使用剃须刀选中复选框后复制值

本文关键字:复制 复选框 剃须刀 | 更新日期: 2023-09-27 18:34:35

正如标题所暗示的那样,我正在尝试在单击复选框后将值从一个文本框复制到另一个文本框。我知道如何通过javascript做到这一点,唯一的问题是它需要使用剃刀在服务器端完成。我正在尝试使用下面的代码完成此操作,但是,它一直给我臭名昭著的"对象引用未设置为对象的实例"错误。但我不确定它指的是什么,任何帮助将不胜感激。

<div class="editor-field">
    @Html.CheckBoxFor(model => model.SameAddress, new { id = "chkAddress" })
    @{bool isChecked = false; 
        if (Boolean.TryParse(Request.Form.GetValues("chkAddress")[1], out isChecked) == true)
        {
        }
    }
</div> 

使用剃须刀选中复选框后复制值

Razor不会在这方面帮助你。有两种方法可以做到这一点。

1(使用javascript:侦听复选框更改事件,如果选中,则读取第一个文本框的内容并将其粘贴到第二个文本框中。这是我的首选。

像这样的事情

$(function(){
    $("#chkCopy").change(function(){
        $("#address2").val("");
       if(this.checked)
       {
            $("#address2").val($("#address1").val())
            //Lets read city and paste it in the second place as well.
            $("#city2").val($("#city1").val())
       }                
    });
});​

假设您要在单击带有 id chkCopy 的复选框时从具有 id address1 的文本框复制到具有 id address2的文本框

工作样品 : http://jsfiddle.net/9fM89/4/

2(使用表单帖子:让用户单击"复制"按钮,它会将表单提交到您的操作方法,您可以在其中读取这些表单元素的值并将其设置为用于第二个复选框的属性并将其返回到视图。