-4

javascript の else-if ステートメントで深刻な問題に直面しています。それらを使用してセッション変数を特定の値に割り当てますが、そうしようとすると、最後のelse ifステートメントに書き込まれた最後の値に割り当てられますが、奇妙なことに、それは右側のelse ifブロックに入り、値を変更すると、関数の最後で間違った値に変更されます。ここに私が取り組んでいるコードがあります:

function showInput(value){
   if(value==='username'){
       document.getElementById('search').innerHTML = "User name: " 
       <?php 
       $_SESSION['searchfield']="user name";
       ?>
   }
   elseif (value==='phonenumber'){
       document.getElementById('search').innerHTML = "Phone number: " 
       <?php 
       $_SESSION['searchfield']="phone number";
       ?>
   }
   elseif (value==='email'){
       document.getElementById('search').innerHTML = "E-mail: " 
       <?php 
       $_SESSION['searchfield']="email";
       ?>
   }
}

前もって感謝します。

4

3 に答える 3

2

PHP は、JavaScript が実行される前にサーバー上で実行されます。それらは相互作用しません。PHP のライフサイクルを学びます。コードがサーバー上で実行されると、これら 3 つのセッション行がすべて設定され、常に電子メールで終了します。

于 2013-05-09T12:58:47.433 に答える
2

elseifにはありません。その上、javascript と PHP を混ぜて何をしようとしていますか? それらはまったく異なるランタイムです。セッション変数を保存するには、サーバーにポストバックする必要があります。

于 2013-05-09T12:58:55.350 に答える
1

コードを適切にインデントできますか?

elseif は適切な JavaScript ではありません

else if
于 2013-05-09T12:58:47.123 に答える