Jquery.cascade插件更改Ajax URL的格式
-
05-07-2019 - |
题
我正在使用 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
现在,在示例中提供了以下评论:
传递父选择的选定值 以url为'val =',但接受完整 ajax选项哈希所以你可以追加 其他数据
所以我假设我希望实现的目标是可能的 - 但作为jQuery和Ajax的新手,我对如何做到这一点感到茫然。有人可以帮忙吗?
解决方案
Cascade插件正在创建默认的AJAX选项(例如: http://docs.jquery.com /类型#选项):
type: "GET", dataType: "json", success: function(json) { $this.trigger("updateList", [json]); }, data: $.extend(_ajax.data,ajax.data,{ val: opt.getParentValue(parent) })
换句话说,改变一行:
<代码> ajax:{url:'/ Home / Models'} 代码>
到
<代码> ajax:{url:'/ Home / Models /'+ jQuery('#CompareManufacturerList')。val()} 代码>
代替。
不隶属于 StackOverflow