如何使用javascript绑定telerik mvc下拉列表

时间:2011-06-29 19:25:24

标签: telerik telerik-grid telerik-mvc

我有一个带有两个telerik mvc下拉菜单的应用程序 - 地区和国家/地区。每次区域下拉更改时,我都需要使用ASMX Web服务填充国家/地区下拉列表。换句话说,我需要将参数传递给Web服务,以及从客户端调用bind方法的方法。这就是我所拥有的,但它不起作用。

@(Html.Telerik().DropDownList()
             .Name("RegionDDL")
             .BindTo(new SelectList(Model, "value", "value"))
             .ClientEvents(events => events.OnChange("onChange"))

       )
@(Html.Telerik().DropDownList()
            .Name("SeasonDDL")
            .ClientEvents(events => events
               .OnDataBinding("onDropDownListDataBinding")
             )
            .DataBinding(dataBinding => dataBinding
            .WebService().Select("~/country.svc/GetSeasonDropDownItems"))
    )

现在是脚本

<script type="text/javascript">

var RegionDDLv;

function onChange() {
      //Get the region
      RegionDDLv = $("#RegionDDL").data("tDropDownList").value();
      var countryDDLv = $("#countryDDL").data("tDropDownList");

      countryDDLv.dataBind();//THIS IS NOT WORKING
}
function onDropDownListDataBinding(e) {
        e.data = { region: RegionDDLv };
}                   
</script>

由于

2 个答案:

答案 0 :(得分:3)

经过一番研究,我在这里找到了回答者

http://www.telerik.com/help/aspnet-mvc/telerik-ui-components-combobox-client-api-and-events.html

countryDDLv.reload();

答案 1 :(得分:1)

尝试

SeasonDDLv.rebind();

而不是

SeasonDDLv.dataBind();