0

HTML の選択オプションから値を取得するこの JavaScript 関数があります。

<script type="text/javascript">

function showUser(str) {
if (str=="") {
  document.getElementById("txtHint").innerHTML="";
  return;
  }
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function() {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)  {
    var str=xmlhttp.responseText;
    var splitstr=str.split('||');

    document.getElementById("txtHint").innerHTML=splitstr[0];
    document.getElementById("txtval").innerHTML=splitstr[1];
    }
  }
xmlhttp.open("GET","getdetails.php?q="+str,true);
xmlhttp.send();
}

</script>

さて、str私はその値を取得してPHP変数に入れたいJavaScript変数です。

私はこれを使用していますが、機能していません:

$grade = "<script language=javascript>document.write(str);</script>";
echo $grade;

これを行う正しい方法は何ですか?

4

2 に答える 2

0

PHPは Web サーバー上で実行されるため、ページが読み込まれたときにのみ実行されます。したがって、上記のステートメントは、ページの読み込み後に呼び出される関数内で実行されるため、機能しません。

目的を達成するには、str を ajax 呼び出しを介して php ファイルに送信し、それをセッション変数に保存します。そして、変数が必要なときはいつでも、セッション値を取得する別の ajax 関数を呼び出します。

于 2012-04-25T17:10:07.087 に答える