クローンと削除ボタンのある選択メニューを含む単純なフォームを作成しようとしています。これらの選択メニューのいずれかが変更されたら、.Ajax呼び出しを使用してフォームを投稿する必要があります。動作しますが、HTMLにいくつかの問題があります
<form action="action.php" method="post" id="LangForm" >
<div id="fileds">
<select name="lang[]" id="lang" class="lang">
<option value="">Select</option>
<option value="arabic">Arabic</option>
<option value="english">english</option>
</select>
</div>
</form>
<button class="clone">Clone</button>
<button class="remove">Remove</button>
<div id="content"></div>
JS
$(function(){
var counter = 1;
$(".clone").click(function(){
$('#lang').clone().appendTo('#fileds');
counter++ ;
});
$(".remove").click(function(){
if (counter > 1) {
$('#lang:last').remove();
counter-- ;
}
});
$('.lang').change(function(){
$.ajax({type:'POST',
url: 'action.php',
data:$('#LangForm').serialize(),
success: function(response) {
$('#content').html(response);
}
});
});
});
最初に2つの問題があります。削除ボタンをクリックすると、最初に元の選択メニューが削除され、次に複製されたものが削除され、最後に複製されたものが保持されます。必要なのは、最初に複製されたメニューを削除して、元のメニューを保持することです。
2番目に、元のメニューが変更された場合にのみ送信フォームを発行します。必要なのは、メニューが元のメニューまたは複製されたメニューを変更するたびにフォームを送信することです。以下は、アクションPHPページのPHPコードで、結果PHPを表示するための単純なものです。
<?php
print_r ($_POST['lang']);
?>
ありがとう