2015-12-27 133 views
0

我只是想在更改dropdownlist時更改文本框的值,可以告訴我發生了什麼問題嗎?我在我的控制器真正的新jQuery中在更改下拉列表時更改文本框的值

代碼僅僅是一個樣品後,我的代碼工作

查看

<script type="text/javascript"> 
     $(document).ready(function() { 
      $("#ddltype").change(function() { 
       var id = $(this).val(); 
       $.getJSON("@Url.Action("getWeightedAverage", "Employee")", { id: id }, function (Ave) { 
        $("#Average").val(Ave); 
       }); 
      }); 
     }); 
    </script> 

<fieldset> 
    <legend>Grade</legend> 

    <div class="editor-label"> 
     @Html.DropDownListFor(model => model.g_type, new List<SelectListItem>{ 
     new SelectListItem {Value = "1", Text = "Written Work"}, 
     new SelectListItem {Value = "2", Text = "Performance Task"}, 
     new SelectListItem {Value = "3", Text = "Quarterly Assesment"}, 
     }, new {id = "ddltype" }) 
     @Html.ValidationMessageFor(model => model.g_type) 
    </div> 

    <div class="editor-label"> 
     @Html.LabelFor(model => model.weighted_percent) 
    </div> 
    <div class="editor-field"> 
     @Html.TextBoxFor(model => model.weighted_percent, new { id = "Average" }) 
     @Html.ValidationMessageFor(model => model.weighted_percent) 
    </div> 

控制器我會做更多的

public JsonResult getWeightedAverage(string id) 
    { 
     string Ave = "40"; 
     return Json(Ave, JsonRequestBehavior.AllowGet); 
    } 
+0

爲什麼'這個描述。平均',只是'$(「#平均」)。val(平均);'會工作。 –

+0

仍然不能正常工作:( – Renz

回答

0

使用具有從服務器調用返回的響應的變量。您不需要this關鍵字。

$(document).ready(function() { 
    $("#ddltype").change(function() { 
     var id = $(this).val(); 
     $.getJSON("../Employee/getWeightedAverage", { id: id }, function (res) { 
      $("#Average").val(res); 
     }); 
    }); 
}); 

我還建議您使用Url.Action方法來構建url而不是硬編碼。

$.getJSON("@Url.Action("getWeightedAverage","Employee")", { id: id }, function (response) { 
    $("#Average").val(response); 
}); 

如果你的代碼是不是在Razor視圖,但在外部JS文件,你築基URL在Razor視圖和使用,在你的js文件爲this answer.

+0

仍然不能正常工作:(我已經編輯了代碼 – Renz

+0

它應該可以正常工作,只需驗證一下,我想你在page.check你的瀏覽器控制檯中有其他一些腳本錯誤 – Shyju

+0

ReferenceError:$沒有定義addGrade:7:9 哪個部分是錯誤,這是我唯一的腳本 – Renz