반응형
Ajax 호출에서 MVC 컨트롤러로 다중 매개 변수 전달 방법
아래와 같은 컨트롤러가 있습니다.
public ActionResult Save(string input, string name) {
//Some code
return PartialView();
}
그리고 이 컨트롤러 메소드에 대한 Ajax 호출이 필요하며 두 인수 입력과 값을 전달합니다.
그리고 나의 아약스 콜은 다음과 같습니다.
$.ajax({
url: '/Home/Save',
type: 'POST',
async: false,
dataType: 'text',
processData: false,
data: "input=" + JSON.stringify(data) + "&name =" + $("#name").val(),
success: function (data) {
}
});
이름 매개 변수에 값을 전달할 수 없습니다.이름 매개 변수의 값이 null이 되고 있습니다.
HTTP POST를 만들지만 GET 쿼리 문자열 구문으로 매개 변수를 전달하려고 합니다.POST에서 데이터는 명명된 매개 변수로 전달되며 다음을 사용하지 않습니다.param=value&foo=bar통사론jQuery의 ajax 메서드를 사용하면 다음과 같이 명명된 매개 변수로 Javascript 개체를 만들 수 있습니다.
$.ajax({
url: '/Home/SaveChart',
type: 'POST',
async: false,
dataType: 'text',
processData: false,
data: {
input: JSON.stringify(IVRInstant.data),
name: $("#wrkname").val()
},
success: function (data) { }
});
@xdumain의 게시물 외에도, 나는 당신이 디버그할 수 있도록 Ajax 호출 전에 데이터 객체를 만드는 것을 선호합니다.
var dataObject = JSON.stringify({
'input': $('#myInput').val(),
'name': $('#myName').val(),
});
이제 Ajax 통화에서 사용합니다.
$.ajax({
url: "/Home/SaveChart",
type: 'POST',
async: false,
dataType: 'json',
contentType: 'application/json',
data: dataObject,
success: function (data) { },
error: function (xhr) { } )};
저는 이 질문의 도움으로 그것을 했습니다.
그럼 이 기능을 어떻게 사용할지 보겠습니다.
// Read a page's GET URL variables and return them as an associative array.
function getUrlVars()
{
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
그리고 이제 그것을 사용하세요.Ajax call
"ajax": {
url: '/Departments/GetAllDepartments/',
type: 'GET',
dataType: 'json',
data: getUrlVars()// here is the tricky part
},
그게 전부입니다. 하지만 알고 싶다면요.how to use this function또는not send all the query string parameters실제 답으로 되돌아가다
function final_submit1() {
var city = $("#city").val();
var airport = $("#airport").val();
var vehicle = $("#vehicle").val();
if(city && airport){
$.ajax({
type:"POST",
cache:false,
data:{"city": city,"airport": airport},
url:'http://airportLimo/ajax-car-list',
success: function (html) {
console.log(html);
//$('#add').val('data sent');
//$('#msg').html(html);
$('#pprice').html("Price: $"+html);
}
});
}
}
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "ChnagePassword.aspx/AutocompleteSuggestions",
data: "{'searchstring':'" + request.term + "','st':'Arb'}",
dataType: "json",
success: function (data) {
response($.map(data.d, function (item) {
return { value: item }
}))
},
error: function (result) {
alert("Error");
}
});
언급URL : https://stackoverflow.com/questions/20193888/how-to-pass-multiple-parameters-from-ajax-call-to-mvc-controller
반응형
'programing' 카테고리의 다른 글
| 액세스 제어 오리진이 있는 여러 하위 도메인 지정 (0) | 2023.08.21 |
|---|---|
| 지연된 객체란 무엇입니까? (0) | 2023.08.16 |
| SQL Server 2008에서 매개 변수화된 VIEW 생성 (0) | 2023.08.16 |
| Android에서 프로그래밍 방식으로 전면 플래시 라이트를 켜는 방법은 무엇입니까? (0) | 2023.08.16 |
| 위조 방지 토큰을 사용하여 Ajax 요청을 만드는 방법(mvc) (0) | 2023.08.16 |