Я хочу отправить строку как параметр ajax Post.
Следующий код:
$.ajax({
type: "POST",
url: "http://nakolesah.ru/",
data: 'foo=bar&ca$libri=no$libri',
success: function(msg){
alert('wow'+msg);
}
});
Не работает. Почему?
Я хочу отправить строку как параметр ajax Post.
Следующий код:
$.ajax({
type: "POST",
url: "http://nakolesah.ru/",
data: 'foo=bar&ca$libri=no$libri',
success: function(msg){
alert('wow'+msg);
}
});
Не работает. Почему?
Попробуйте вот так:
$.ajax({
type: 'POST',
// make sure you respect the same origin policy with this url:
// http://en.wikipedia.org/wiki/Same_origin_policy
url: 'http://nakolesah.ru/',
data: {
'foo': 'bar',
'ca$libri': 'no$libri' // <-- the $ sign in the parameter name seems unusual, I would avoid it
},
success: function(msg){
alert('wow' + msg);
}
});
$.ajax({
type: 'POST',
url:'http://nakolesah.ru/',
data:'foo='+ bar+'&calibri='+ nolibri,
success: function(msg){
alert('wow' + msg);
}
});
Я вижу, что они не поняли ваш вопрос. Ответ: добавьте "традиционный" параметр в ваш вызов ajax следующим образом:
$.ajax({
traditional: true,
type: "POST",
url: url,
data: custom ,
success: ok,
dataType: "json"
});
И он будет работать с параметрами PASSED AS STRING.
Для аналогичного приложения мне пришлось обернуть мой объект data
с помощью JSON.stringify()
следующим образом:
data: JSON.stringify({
'foo': 'bar',
'ca$libri': 'no$libri'
}),
API работал с клиентом REST, но не мог заставить его работать с jquery ajax в браузере. Это было решение.
Не уверен, что это все еще актуально. Просто для будущих читателей. Если вы действительно хотите передать свои параметры как часть URL-адреса, вы должны, вероятно, использовать jQuery.param().
Не прямой ответ на ваш вопрос.. Но следующий - единственный синтаксис, который работал у меня -
data: '{"winNumber": "' + win + '"}',
И имя параметра совпадает с аргументом метода сервера
Я столкнулся с проблемой передачи строкового значения в строковые параметры в Ajax. После стольких поисковых запросов у меня появилось специальное решение, как показано ниже.
var bar = 'xyz';
var calibri = 'no$libri';
$.ajax({
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
url: "http://nakolesah.ru/",
data: '{ foo: \'' + bar + '\', zoo: \'' + calibri + '\'}',
success: function(msg){
alert('wow'+msg);
},
});
Здесь bar и calibri - две строковые переменные, и вы можете передать любое строковое значение соответствующим строковым параметрам в веб-методе.
jQuery.ajax({тип: "POST", URL: "WebForm1.aspx/getnames", данные: '{"fullname2": "+ empName +'"} ', contentType: "application/json; charset = utf-8 ", dataType:" json ", success: function (data) {alert (data.d);}, error: function (error) {alert (" Произошла ошибка: "+ error.d);}});
Я также столкнулся с этой проблемой. Но у меня есть решение, и оно сработало отлично. Мне нужно было передать параметры, которые уже произведены функцией JavaScript. Так что ниже код работает для меня. Я использовал ColdFusion для бэкэнда. Я просто напрямую использовал параметры в качестве переменной.
$.ajax({
url: "https://myexampleurl.com/myactionfile.cfm",
type: "POST",
data : {paramert1: variable1,parameter2: variable2},
success: function(data){
console.log(data);
} )};