1

現在、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>

そして、このフォームからの結果を DIV 'result' にロードする AJAX スクリプト。

    <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>          

それを変更する方法、またはそれを機能させるためにどちらかのファイルのどこに配置するかについての助けをいただければ幸いです!

4

1 に答える 1

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>  
于 2012-05-24T14:21:49.453 に答える