0

我在我的 Asp.Net MVC 应用程序中使用jQuery.Cascade插件。我的工作方式如下:

jQuery("#CompareModelList").cascade("#CompareManufacturerList", {
                ajax: { url: '/Home/Models' },
                template: commonTemplate,
                match: function (selectedValue) { return this.ManufacturerId == selectedValue;},
            });

但是,当它触发时,它会通过以下请求调用我的控制器中的操作:

http://localhost/Home/Models?val=50

我更喜欢的是:

http://localhost/Home/Models/50

现在在提供的示例中有以下注释:

将父选择的选定值作为 'val=' 传递给 url,但接受完整的 ajax 选项哈希,因此您也可以附加其他数据

所以我假设我希望实现的目标是可能的——但作为 jQuery 和 Ajax 的新手,我不知道如何做到这一点。任何人都可以帮忙吗?

4

1 回答 1

2

Cascade 插件正在创建默认的 AJAX 选项(例如:http ://docs.jquery.com/Types#Options ),它们是:

    类型:“获取”,
    数据类型:“json”,
    成功:函数(json){ $this.trigger("updateList", [json]); },
    数据:$.extend(_ajax.data,ajax.data,{ val: opt.getParentValue(parent) })

换句话说,换行:

ajax: { url: '/Home/Models' }

ajax: { url: '/Home/Models/' + jQuery( '#CompareManufacturerList' ).val() }

反而。

于 2009-11-26T20:44:32.510 回答