$.ajax(
{
    cache: false,
    async: false,
    dataType: 'html',
    url: "http://www.sina.com.cn",
    success: function(result)
    {
        if (result == "1")
        {
        }
    }
});如上面的ajax是去取"http://www.sina.com.cn"
然后我如何在ajax的其他方法中去更改他的ajax地址
我在
beforeSend:function()
{
    this.url="http://www.163.com"; 
}
没有效果

解决方案 »

  1.   


    $(this) ?? 呵呵 不懂JQ 楼主只可以试试...
      

  2.   

    beforeSend:function() 

        this.url="http://www.163.com"; 

    这个this指的的beforesend对象从起始端开始ajax.url
      

  3.   

    不行
    beforeSend: function()
    {   
       $.ajax.url = "http://www.163.com";
    }
    beforeSend: function()
    {   
       ajax.url = "http://www.163.com";
    }
    都不行
      

  4.   

    beforeSend执行的时候,ajax对象的open操作已经执行过了,所以应该重新open一下beforeSend: function (xhr, s)
    {
      var url = '.....';
      if( s.username )
        xhr.open(s.type, url, s.async, s.username, s.password);
      else
        xhr.open(s.type, url, s.async);
    }
      

  5.   

    啊?已经Open了
    beforeSend不是在发送之前吗那如何不在建立新的操作而把他的url改掉呢谢谢
      

  6.   

    你也可以继承jQuery的ajax对象,封装一个你自己的ajax对象
      

  7.   

    既然要改变url ,那就把url定义成全局变量,需要改变的时候直接修改不就行了
      

  8.   

    既然要改变url ,那就把url定义成全局变量,需要改变的时候直接修改不就行了
    ---------------
    RE:
    这样也不行,转为开始的时候你
    ajax{url=myrul};
    这个时候已经把myrul赋值给ajax的url
    你再改myurl就没有效果了谢谢;
    如何在赋值给ajax的url值后,在ajax还没有进行提交的时候改掉这个url呢
    谢谢