2012-12-18 106 views
1

我有一个表单,当更新时,需要从AJAX中提取新数据。当AJAX能够访问数据时,我建立了一个成功的功能:AJAX表单提交和刷新

$(document).ready(function() { 

    var results = $('#hidden').serialize(); 

    var url = 'index.php?option=com_mls&view=list&format=raw&' + results; 

    $('#test').html(url); 

    $.ajax({ 
     url: url, 
     success: function(){ 
      alert('success'); 
     }, 
     error: function(){ 
      alert('There was an error loading your request. <br />Please try again later.'); 
     } 
    }); 
}); 

这已经过测试和工作。我所遇到的问题是在提交用户表单时,设置了一个包含新数据的AJAX函数。我试过这个无济于事:

$(document).ready(function() { 

    function runQuery(){ 

     var results = $('#hidden').serialize(); 

     var url = 'index.php?option=com_mls&view=list&format=raw&' + results; 

     $('#test').html(url); 

     $.ajax({ 
      url: url, 
      success: function(){ 
       alert('success'); 
      }, 
      error: function(){ 
       alert('There was an error loading your request. <br />Please try again later.'); 
      } 
     }); 
    }; 

    runQuery(); 

}); 

它没有运行runQuery();函数。

回答

2

应该

$(document).ready(function() {  
    runQuery(); 
}); 

function runQuery(){ 

     var results = $('#hidden').serialize(); 

     var url = 'index.php?option=com_mls&view=list&format=raw&' + results; 

     $('#test').html(url); 

     $.ajax({ 
      url: url, 
      success: function(){ 
       alert('success'); 
      }, 
      error: function(){ 
       alert('There was an error loading your request. <br />Please try again later.'); 
      } 
     }); 
    }; 
+0

所以'runQuery();'需要在全球? – Plummer

+0

其实我试过你的方式,它也可以。但既然是ajax电话,我就把他们分开了。你能否提供更多的信息,你想如何调用runQuery函数。它是在“提交”还是在页面加载过程中。 – Sunny

+0

这不是我的方式,你的方式工作。是,.submit,但不需要重新加载页面。我还没有得到那么多。 – Plummer