0

我在 php 中使用 jquery 进行 ajax 调用,并且得到了相同的结果,但是在结果的(响应)HTML 中,我有一个表单在单击提交按钮后未提交。我没有收到任何错误。我也想在不使用 Ajax 的情况下提交这个响应 HTML 表单。请帮我解决这个问题。

阿贾克斯响应:

<form method=\"post\" id=\"clientlist\" action=\"addclients.php\">
  //inputs fileds...
</form>

阿贾克斯调用:

var $j = jQuery.noConflict();
$j(document).ready(function(){
   $j(".linktext").click(function(){ 

   //check which link is tobe click e.g. Prev or Next
   var link = $j(this).html();
   var limit = 1;
   if(link == 'Prev'){
     limit = document.getElementById('text_prev').value;
   }else if(link =='Next'){ 
     limit = document.getElementById('text_next').value;
   }

   $j.ajax({
     type: "POST",
     data: $j("#clientlist").serialize(),
     url: "agencyclients_ajax.php?start="+limit,
     success: function(response) {
       $j('#mainbody').html(response);
     }
  });
 });
4

4 回答 4

0

这是一个例子。将 $('#submit') 替换为您的提交按钮 ID。

$('#submit').click(function(){
     $.ajax({
         type:'POST',
         url: '/search.php',
         data: $j("#clientlist").serialize(),
         success: function(data){
            alert('sent');
         }
     });
return false;
});
于 2012-10-12T11:35:17.527 回答
0

请使用提交事件的形式。当您单击提交时,只需执行 ajax 调用,然后返回 false 以确保该表单未以正常方式提交。

现在您正在使用链接 CLICK 事件//not encouraged.

并且对于 jquery 没有冲突,使用此代码:

(function($){
   $(function(){
      //$ can be used in this area without any conflict, provided by jQuery Docs for creating a plugin
   });
})(jQuery);
于 2012-10-12T11:25:57.640 回答
0

将 ajax 响应更改为:

<form method="post" id="clientlist" action="addclients.php">
  //inputs fileds...
</form>

删除斜线。

于 2012-10-12T11:28:25.440 回答
0

这是因为事件处理程序在重新加载后未添加到“.linktext”。

您可以使用 JQuery On 函数,以便在 DOM 更改时重新应用事件处理程序。

http://api.jquery.com/on/

$j(".linktext").click(function(){

变成

$j(".linktext").on("click", function(event){
于 2012-10-12T11:29:30.347 回答