wordpress に基づいて Web サイトを構築しており、そこに jQuery を使用するフォームを配置しています。ただし、jquery はまだ理解し始めたばかりなので、作業中はまだ気分がよくありません。2 つの質問があります。
最初のもの: このフォームに関して、クライアント側とサーバー側の両方でフォームを検証する必要がありますか? それともサーバー側(php)だけで十分ですか?
2 番目の質問: フォームにはいくつかのフィールドがあり、ボタンをクリックすると複製できます。このために、次のコードを使用しています。
Jquery コード:
(function($){
$countForms = 1;
$.fn.addForms = function(idform){
var myform = "<table>"+
" <tr>"+
" <td>Field A ("+$countForms+"):</td>"+
" <td><input type='text' name='fielda["+$countForms+"]'></td>"+
" <td>Field B ("+$countForms+"):</td>"+
" <td><textarea name='fieldb["+$countForms+"]'></textarea></td>"+
" <td><button>remove</button></td>"+
" </tr>"+
"</table>";
if(idform=='mybutton'){
alert(idform);
myform = $("<div>"+myform+"</div>");
$("button", $(myform)).click(function(){ $(this).parent().parent().remove(); });
$(this).append(myform);
$countForms++;
}
};
})(jQuery);
$(function(){
$("#mybutton").bind("click", function(e){
e.preventDefault();
var idform=this.id;
if($countForms<3){
$("#container").addForms(idform);
}
});
});
HTML:
<div id="container"><div>
<form method="post" name="b" >
<table>
<tr>
<td>Field A</td>
<td><input type='text' name='dadoA'></td>
<td>Field B</td>
<td><textarea name="dadoB"></textarea></td>
<td><button>remove</button></td>
</tr>
</table>
</div>
</div>
<button id="mybutton">add form</button>
<div align="center">
<p><input type="submit" value="Registar" name="registar"></p>
</div>
これらのフィールドを検証するためにphpを使用する方法を知っています。私が知らないのは、それらを複製するときに検証する方法です。
つまり、このフォームには 2 つのフィールドがあり、それらを複製して、ユーザーがこの新しい (3 番目の) フィールドに間違った/受け入れられない値を入力するとします。
「送信」をクリックした後、PHP を使用して入力を検証し、ページを更新し、元の 2 つのフィールドと複製されたフィールド (ユーザーが複製したもの) をエコーし、ユーザーが入力したそれぞれの入力とエラーメッセージを表示するにはどうすればよいですか?