お世話になります
前回こちらのサイトで「phpで取得した複数のレコードをajaxで更新したい」と質問し、解答を頂いたのですが、その後また別の問題で上手くいかなくなっております
頼ってばかりで申し訳ありませんが、ご教示頂ければと思います
教えていただいたコード
javascript
1<script src="http://code.jquery.com/jquery-latest.js"></script> 2 <script> 3 $(function(){ 4 var fd=new FormData(); 5 $('[name="id"]').each(function(){ 6 fd.append("id[]",$(this).val()); 7 }); 8 $('[name="name"]').each(function(){ 9 fd.append("name[]",$(this).val()); 10 }); 11 $.ajax({ 12 "url":"send1.php", 13 "type":"post", 14 "data":fd, 15 "cache":false, 16 "processData": false, 17 "contentType": false, 18 }).done(function(data){ 19 alert(data); 20 }); 21 22 }); 23 </script> 24
html
1<form method="post"> 2 <p><input name="id" value="1"></p> 3 <p><input name="name" value="a"></p> 4 <p><button type="submit" id="send" value="送信" >更新</button></p> 5 </form> 6 <form method="post"> 7 <p><input name="id" value="2"></p> 8 <p><input name="name" value="b"></p> 9 <p><button type="submit" id="send" value="送信" >更新</button></p> 10 </form> 11 <form method="post"> 12 <p><input name="id" value="3"></p> 13 <p><input name="name" value="c"></p> 14 <p><button type="submit" id="send" value="送信" >更新</button></p> 15 </form>
php
1<?php 2 header("Content-type: text/plain; charset=UTF-8"); 3 4 if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) 5 && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') 6 { 7 // Ajaxリクエストの場合のみ処理する 8 9 if (isset($_POST['id'])) 10 { 11 12print_r($_POST['id']); 13 } 14 else 15 { 16 17 echo 'The parameter of "request" is not found.'; 18 } 19 } 20 ?> 21
これで複数のデータの受取方はわかったのですが、元のページのhtmlで更新ボタンを実行すると、入力した値ではなく、コードに書いてある <input name="id" value="2"> の valueの値に戻ってしまいます。
この部分を入力後の値でデータを渡すにはどうしたらいいのでしょうか?
よろしくお願い致します
回答2件
あなたの回答
tips
プレビュー