将已通过AJAX上传到DIV的变量传递到相同的DIV中,并将结果替换为内容

时间:2012-05-24 12:55:23

标签: php javascript jquery html ajax

我目前通过PHP将页面表单上的表单结果更新为DIV,提交解析。 PHP文件生成另一个表单,然后我需要将其传递给另一个PHP并更新之前带有结果的DIV。

这是我的HTML:

 <div id="content">
  <div id="options">
    <form id="form1">
      <table>
        <tr>
          <td>Date:</td>
          <td><input name="date" type="text" id="datepicker" /></td>
        </tr>
        <tr>
          <td>Size:</td>
          <td><input name="size" type="text" /></td>
        </tr>
        <tr>
          <td colspan="2"><input name="submit" type="submit" value="Submit"/></td>
        </tr>
      </table>
    </form>
  </div>
  <div id="result"> </div>
</div>

我的AJAX脚本将此表单中的结果加载到DIV'结果'中。

    <script>
            $(function() { 
            $('#form1').submit(function(e) {
                e.preventDefault(); // stops form from submitting naturally
                $.ajax({
                    data: $(this).serialize(),
                      url: 'ajax/ajax-details.php',
                      success: function(response) {
                          $('#result').html(response); 
                      }
                  });
              });
             });
     </script>

我希望它解析的我的PHP文件名为'ajax / ajax-info.php',表单名称我希望传递信息,称为“id ='info'”。

我想我现在的脚本几乎就在那里。

    <script>
            $(function() { 
            $('#info').submit(function(e) {
                e.preventDefault(); // stops form from submitting naturally
                $.ajax({
                    data: $(this).serialize(),
                      url: 'ajax/ajax-info.php',
                      success: function(response) {
                          $('#result').html(response); 
                      }
                  });
              });
             });
     </script>          

如何更改它或在任一文件中找到它以使其工作的任何帮助将非常感激!

1 个答案:

答案 0 :(得分:0)

您必须使用live()函数在动态显示的DOM元素上设置事件

<script>
        $(function() { 
        $('#info').live('submit', function(e) {
            e.preventDefault(); // stops form from submitting naturally
            $.ajax({
                data: $(this).serialize(),
                  url: 'ajax/ajax-info.php',
                  success: function(response) {
                      $('#result').html(response); 
                  }
              });
          });
         });
 </script>