0

mvc3を使用して、次のシナリオがあります。

RecordID、RecordName、およびRecordTypeを保持するデータベーステーブルがあります。前述の各フィールドに1つずつ、合計3つのテキストボックスが表示されます。

私の質問は、関連するテキストボックスにRecordIDを入力するときに、その特定のRecordIDのRecordNameとRecordTypeを表示できるようにしたいということです。どうすればこれを達成できますか?

4

1 に答える 1

7

ビューで:

@Html.TextBoxFor(model => model.RecordId)
@Html.TextBoxFor(model => model.RecordName)
@Html.TextBoxFor(model => model.RecordType)

<script language="javascript">
$('#RecordId').change(function(){
    var recordId = this.value;
    $.getJSON("/MyController/GetRecordById",
        {
            id: recordId
        },
        function (data) {
            $('RecordName').val(data.Name);
            $('RecordType').val(data.Type);
        });
});
</script>

コントローラの場合:

public JsonResult GetRecordById(int id)
{
    var record = recordRepository.GetById(id);
    var result = new {
                         Name = record.Name,
                         Type = record.Type
                     }

    return Json(result, JsonRequestBehavior.AllowGet);
}
于 2012-05-23T10:57:08.167 に答える