有没有更好的方式来做到这一点ajax调用
问题描述:
$('#request_song').autocomplete({
serviceUrl: '<%= ajax_path("trackName") %>',
minChars:1,
width: 300,
delimiter: /(,|;)\s*/,
deferRequestBy: 0, //miliseconds
params: { artists: 'Yes' },
onSelect: function(value, data){
artist = $('#request_artist').val(); //this will return "The Killers"
//make an ajax request to "/events/artist"
},
我试图让ONSELECT函数内部的Ajax请求有没有更好的办法,如果没有什么是语法调用“/事件/杀手”那我需要的字符串替换呢?有没有这样做的干净方式有没有更好的方式来做到这一点ajax调用
答
如何通过jQuery调用ajax?像下面...
onSelect: function(value, data){
artist = $('#request_artist').val(); //this will return "The Killers"
$.ajax({
type: "POST",
url: "/events/" + artist,
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
alert(msg);
}
});
}
我建议要么格式化“艺术家”变量服务器端,从而自动完成正确的格式返回艺术家,alertanively用正则表达式像这样格式化...
url: "/events/" + formatName(artist),
...
function formatName(artist) {
return artist.replace(/[\W]/, "")
}