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

发布于 2024-11-17 22:03:54 字数 1143 浏览 9 评论 0原文

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

@(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>

谢谢

I have an application with two telerik mvc drop-downs - region and country. I need to populate the country drop-down using an ASMX Web Service every time the region drop-down change. In other words I need to pass a parameter to the web service and a way to call the bind method form the client. This is what I have but it's not working.

@(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"))
    )

Now the scripts

<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>

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

活泼老夫 2024-11-24 22:03:55

尝试

SeasonDDLv.rebind();

代替

SeasonDDLv.dataBind();

try

SeasonDDLv.rebind();

instead of

SeasonDDLv.dataBind();
朮生 2024-11-24 22:03:54

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

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

它是

countryDDLv.reload();

After some research, I found the answerer here

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

It is

countryDDLv.reload();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文