入力フィールドがサーバーに送信されるときにフォームに存在することを確認するにはどうすればよいですか?例えばフォームをサーバーに送信するときに、入力フィールドがフォームに存在することを確認するにはどうすればよいですか?
、私は「mem_follow」という名前のチェックボックスがフォームに存在するかどうかを確認したいです。
また、javascript(jquery)を使用する必要がありますか?
入力フィールドがサーバーに送信されるときにフォームに存在することを確認するにはどうすればよいですか?例えばフォームをサーバーに送信するときに、入力フィールドがフォームに存在することを確認するにはどうすればよいですか?
、私は「mem_follow」という名前のチェックボックスがフォームに存在するかどうかを確認したいです。
また、javascript(jquery)を使用する必要がありますか?
これはJavascriptである必要があります。 PHPは、サーバーからブラウザの機能に手を差し伸べることができません。フィールド名が送信されたデータに存在するかどうかだけを確認できます。 jqueryので
それは些細です:もちろん
if ($('input[name="nameoffield"]')) { ... field exists ... }
、これは問題を提起...なぜあなたは、フィールドが存在するかどうかを知る必要がありますか?おそらくあなたはフォームを作成している人です。フィールドが存在するかどうかはすでにわかっているはずです。 「mem_follow」という名前の任意の変数がある場合
$('#myForm').submit(function (e) {
if($(this).children(':checkbox[name=mem_follow]').length > 0)
//exists
else
//doesn't exist
});
やPHPを使用して確認します:
あなたはjQueryのを使用して、このような何かを行うことができます(それはだ場合、それは問題ではありませんが、これは、POSTのためであります私はあなたがjQueryの
$.fn.Exists = function() {
return $(this).length>0;
}
if ($("here are your selector to check").Exists()) {
...
}
シンプルで便利に使用することをお勧め
if(isset($_POST['mem_follow']))
//exists
else
//doesn't exist
)GETまたはPOST! そして、あなたは)どこでもこのExists
メソッドを使用することができます)))
フォームsubmit
イベントハンドラで
if($("input[name=mem_follow]").length > 0){
//It exists
}
をこのコードを試すことができ、ここで他の答えは正しいです:あなたはそれにしなければならないだろうクライアント側。チェックボックスの入力フィールドの場合、ボックスがチェックされていない場合、ブラウザにそのフィールドのPOSTパラメータが含まれているとは限りません。
<form action="test.php" method="post">
<input type="checkbox" name="checkbox" value="YES" />
<input type="submit" name="submit" value="submit" />
</form>
のみsubmit=submit
パラメータが送信されます:あなたは、チェックボックスをチェックせずにこのフォームを送信した場合たとえば
、。
したがって、指定したチェックボックスがサーバー側のフォームに存在することを保証することはできません。すべての要素についても
は、それが
この
number = document.form_name.getElementsBYName('Name of Input').length;
ザッツは、私はあなたが必要と推測している
を楽しむ入力用の特定の名前のために、他のこの
number = document.form_name.elements.length;
を試してみてくださいフォームが送信された後にサーバー側をチェックする。そのような場合は、あなたのようにチェックすることができます。
<?php
if (isset($_POST['mem_follow']))
{
// Work your server side magic here
} else {
// The field was not present, so react accordingly
}
?>
次のスクリプトでは、チェックボックスをオンにしない限り、フォームは送信されません。試してみると、エラーメッセージが表示されている隠れたdivが表示され、その理由をお知らせします。
<form action="test.php" method="post" id="myform">
<input type="checkbox" name="checkbox" id="checkbox" value="YES" />
<input type="submit" name="submit" value="submit" />
</form>
<div id="error_message_div" style="display:none">You must tick the checkbox</div>
<script>
$('#myform').submit(function() {
if($('#checkbox').attr('checked')) {
return true;
} else {
$("#error_message_div").show();
return false;
}
});
</script>
乾杯 マット
次の2つの方法でこれを行うことができます。サーバー側が
:PHPでクライアント側で
<?php
if (isset($_POST['mem_follow'])
{
// Work your server side magic here
} else {
// The field was not present, so react accordingly
}
?>
:jqueryの
で$('#submit_button').click(function() {
if ($('input[name="box_name"]')) {
if($('input[name="box_name"]').attr('checked')) {
return true;
} else {
return false;
}
}
});
あなたはそれを行うためにはJavaScript(またはjQueryの)を使用することができます:あなたはすべてのあなたのフィールドにこれを行うことができ
<script>
$('#myform').submit(function() {
if($('#yourFieldId').val()=='') {
alert('the field ' + $('#yourformField').name() + ' is empty !');
return false;
} else {
return true;
}
});
</script>
一つずつ、または if文ですべての条件を入れて。
thaknks。実際には私はそれをサーバー側から必要としています。時々私はフォームのチェックボックスを持っていることもあります。私はそれをサーバー側で動的にしたいと思っています。 – laukok
'if(isset($ _ REQUEST ['nameoffield'])){...それが提出されました...}' –
Markに感謝! :) – laukok