0

jqueryのifステートメント内でphpブール変数を使用したいと思います。これは私のコードです:

if(<?php echo $show_login_error ?>)
    $(".login_error").show();

.login_errorは、span要素のクラスです。$ show_login_error変数がtrueの場合、スパンを表示したいのですが、そうでない場合は非表示にします。デフォルトでは、スパンは非表示であり、$show_login_errorはfalseです。残念ながら、変数の値に関係なくスパンが表示されるので、コードが間違っていると思います。それを正しくするために何を変更する必要がありますか?ありがとう

4

2 に答える 2

6

まず、 が.login_errorデフォルトで非表示になっていることを確認します ( display:none)。

次に、試してください

if(<?php echo (int)$show_login_error ?>)
    $(".login_error").show();

0または1を出力することを確認するためだけです(echo false単一の文字を出力しないため)

echo false;      //prints nothing
echo true;       //prints '1'
echo (int)false; //prints '0'
echo (int)true;  //prints '1'

編集

以下に示す他のソリューションも機能します。;-)

于 2012-09-30T02:59:58.430 に答える
0
<?php if($show_login_error == true) ?>
$(".login_error").show();
<?php else: ?>
$(".login_error").hide();
<?php endif; ?>
于 2012-09-30T03:04:10.097 に答える