jQuery.cascade 플러그인 Ajax URL 형식을 변경합니다
-
05-07-2019 - |
문제
나는 사용하고있다 jQuery.cascade 내 ASP.NET MVC 응용 프로그램의 플러그인. 나는 모든 것이 다음과 같이 방식으로 작동했습니다.
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의 새로 인으로서 나는 이것을하는 방법에 대해 상실하고 있습니다. 누구든지 도울 수 있습니까?
해결책
캐스케이드 플러그인은 기본 ajax 옵션을 생성합니다 (예 : http://docs.jquery.com/types#options)) :
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