2012-05-23 51 views
0

我有以下的情況下,使用MVC3:MVC3文本框中的文本改變事件

我有持有的recordId,RecordName和記錄類型的數據庫表。顯示的是三個文本框,前面提到的每個字段都有一個。

我的問題是,當我輸入一個RecordID到相關的文本框中,我想能夠顯示該特定RecordID的RecordName和RecordType。我怎樣才能做到這一點?

回答

7

在View:

@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); 
}