我正在尝试使用带有ajax调用的'GET',但是url会在params之间添加空格
这是我的功能
function getLocation(id,clientid){
var formData ={
'locationid' : id,
'clientbrandid' : clientid
}
var ajaxResponse = $.ajax({
type : 'GET', // define the type of HTTP verb we want to use (GET for our form)
url : '/../admin/miscellaneous/components/global.cfc?wsdl&method=locationData', // the url where we want to GET
data : JSON.stringify( formData ),
contentType : 'application/json',
error : function(data,status,error){
console.log(data+': '+status+': '+error);
},
success : function clientData(pair){
$.each(pair,function( intI, strWord ){
$("input[id=editlocationName]").val(strWord.locationname);
});
}
}).done(function(apiResponse) {
$('#response').append(apiResponse);
});
}
这是正常的,除了URL看起来像这样
http://somesite.com/admin/global.cfc?wsdl&method=locationData&{%22locationid%22:%222008013110482896439177%22,%22clientbrandid%22:%2235%22}
而不是
http://somesite.com/admin/global.cfc?wsdl&method=locationData&locationid=2896439177&clientbrandid=35
有人看到我的ajax电话有问题吗?
答案 0 :(得分:2)
您正在将表单数据转换为JSON而不是URL编码。
jQuery内置了URL编码数据的例程,如果你传递一个对象而不是一个字符串,它将使用它。
更改为:
data : formData,