如何编辑ajax get请求的回调函数中的javascript变量的值

时间:2015-02-19 17:54:02

标签: javascript jquery ajax callback

我想根据文件是否存在来编辑javascript变量。可以使用带有ajax get请求的回调函数来完成吗?根据用户Jonathan Crowe的建议,这是一个潜在的解决方案:

var url="Content/Features/column1.html";
var url2="";
function getURL2(callback) {
    callback = callback || function() {};

    $.ajax({
            url: url,
            error: function()
            {   
               callback("something");
            },
            success: function()
            {
                callback("something else");
            }
        }); 

}

getURL2(function(url2) {

});

调试时,url2 =

末尾的“某事”
getURL2(function(url2) {

    });

呼叫。但是,如果我尝试在此函数之外访问url2,它仍然设置为“”。如何根据ajax get请求的结果更改url2的值?

非常感谢你花时间帮忙。如果您需要我的任何其他信息,请告诉我。

1 个答案:

答案 0 :(得分:0)

var url2 = "";
$.ajax({
    url:'http://www.example.com/somefile.ext',
    type:'HEAD',
    async : false,
    error: function()
    {
        //file not exists
        url2 = "something";
    },
    success: function()
    {
        //file exists
    }
});

// If file does not exists url2 will be equal to something here as well.