言い換える:PHPの変数がありJavaScriptを使用のonchangeフォームフィールドにDBからPHPの変数を比較し、表示/非表示スパンに応じ
: $アドレス
は、フォーム変数 メアド
がありますユーザーがフォーム変数に入力した値がPHP変数と一致しない場合に表示するページ上のスパンがあります
たとえば、$ add RESS変数=「123 4 ST」アディフォームフィールドで
ユーザー・タイプ「132 4 ST」
アドレスが一致しないため、ユーザは、フィールド(テキスト入力)のうちクリックすると、 span id add_ckに「アドレスが一致しません」と表示されます。
しかし、ユーザーがaddyの内容を「123 4th St」に戻すと、span id add_ckには何も表示されません。
あなたはonchangeイベントで表示/非表示を行うことができますが、以前はドロップダウンを使っていました。しかし、スパンの表示/非表示のイベントをトリガーするために、php変数にテキスト項目 '変更'(フィールドの外側をクリックするか、または他のフィールドをクリックすることによって決定される)を比較することは、私が探しているものです。
<?
$address = "123 4th St";
?>
<html>
<head>
<script>
var db_address = '<?php echo $address; ?>';
document.getElementById('address_field').addEventListener("change", function(){
compare_addresses();
});
var compare_addresses = function(){
var new_address = document.getElementById('address_field').value;
var the_span = document.getElementById('add_ck');
if(db_address == new_address)
{
//The addresses are equal. Show 'add_ck'.
add_ck.style.display = 'block';
}
else
{
//The addresses are not equal. Hide'add_ck'.
add_ck.style.display = 'none';
}
}
</script>
</head>
<body>
<form name="form" method="POST" action="">
<input type="text" name="addy" id="address_field">
<input type="submit">
</form>
<span id="add_ck">Testing</span>
</body>
</html>
___unclearあなたが尋ねていること___ – Rayon
あなたはphpとmix javascriptが必要です。この方法では不可能です。 –
あなたのロジックがどこにあるのか分かりにくいかもしれませんが、これらの言語を混在させることはあまりありません。 JavaScriptに入力とロジックを完全に処理させるか、PHPの状態に絶えずアクセスできるように分割する必要があります。 PHPは主にフォームの提出を求めています(イベント処理には使用できますが、JS/JQは単にその方法より優れています)。 「アクション」からPHPを起動できない場合は、JSですべてを実行する必要があります。 PHPのアクションは必ずしもページをリロードする必要はありません。 –