我试图运行一个函数来生成用于jQuery ajax POST请求的url
,但看起来url
参数只能是一个字符串......这里是代码,note在url
参数Ajax调用的function
:jQuery中的url参数中的函数Ajax请求
//chained code upstairs...
.bind("create.jstree", function (e, data) {
$.ajax({
//"/project/<%= locals.project.handle %>/mkdir/<%=locals.filepath%>",
//"http://127.0.0.1/project/datanotes/mkdir/lolada/lolada_subdir",
type : "POST",
url : function(data){
var url = "<%= locals.request.db.baseURI + "/project/" + locals.project.handle + "/mkdir" %>";
if(data.rslt.obj.attr("id") != null){
url = url + "/" + data.rslt.obj.attr("id");
}
return url;
},
data : {
"title" : data.rslt.name,
"type" : data.rslt.obj.attr("rel")
},
success: function (r) {
if(r.status) {
$(data.rslt.obj).attr("id", "node_" + r.id);
}
else {
$.jstree.rollback(data.rlbk);
}
},
failure : function (r) {
$.jstree.rollback(data.rlbk);
}
});
})
url参数被解释为一个字符串,并没有评估,作为调试日志如下:
GET /project/datanotes/browse/children 200 369ms - 2b
POST /project/function%20(data)%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20url%20=%20%22http://127.0.0.1:3000/project/datanotes/mkdir%22;%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if(data.rslt.obj.attr(%22id%22)%20!=%20null)%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20url%20=%20url%20+%20%22/%22%20+%20data.rslt.obj.attr(%22id%22);%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20url;%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D 404 5ms
你能帮我circunve nt问题?谢谢!
不知道,如果你能做到这一点还是不(你想要什么),但为什么AJAX调用之前有权不运行的功能,把它分配给一个变量,然后使用? – tymeJV
确切地说,这是最好的解决方案,谢谢! –