Ajax:PHP:HTML-Submit Button无法在ajax响应中工作

时间:2017-09-13 17:27:51

标签: php jquery html ajax submit

我的页面中有一个输入,当我输入任何名称时,它与ajax链接,它在我的数据库中搜索该名称并以html格式返回结果所有输入的值都是数据库格式,我放置的形式提交按钮无效。

我的代码: HTML

<div class="well">
     <input type="text" name="promote_student_txt" id="promote_student_txt" />
     <div  id="rr2"></div>
 </div>

AJAX

$('#promote_student_txt').keyup(function(){
    var email = $('#promote_student_txt').val();
    $.post('includes/promote_student_search.php',{e:email},function(data){
        $('#rr2').html(data);
});
});

PHP PAGE

 <td>
       $id="FROM DATABASE";
       $class="FROM DATABASE";
       $section="FROM DATABASE";
       <form  method='get' action='new.php'> 
          <input type='hidden' name='student_id' value='$id' /> 
          <input type='hidden' name='old_class' value='$class' />
          <input type='hidden' name='old_section' value='$section'/>
          <input type='submit' name='promote_single'/>
       </form>
    </td>

1 个答案:

答案 0 :(得分:3)

jQuery在运行时只知道页面中的元素,因此添加到DOM的新元素无法被jQuery识别。要解决这个问题,请使用event delegation,将新添加的项目中的事件冒泡到DOM中的一个点,当jQuery在页面加载时运行时。许多人使用document作为捕获起泡事件的地方,但没有必要一直向上移动DOM树。理想情况下you should delegate to the nearest parent existing at the time of page load.