2
<body>
<form method="post" action="eex4.php">
  <label for="text_2">Select the Scheme:&nbsp;&nbsp;&nbsp;</label>
  <select name="users" id="users">
    <option value="">Select:</option>
    <option value="1">Sem1</option>
    <option value="2">Sem2</option>
    <option value="3">Sem3</option>
    <option value="4">Sem4</option>
    <option value="5">Sem5</option>
    <option value="6">Sem6</option>
  </select>
  &nbsp;&nbsp;&nbsp;
  <input type="submit" value="Submit" name="btn" onClick="ResultPage()"/>
</form>
</body>

上記のコード出力には、送信ボタンのある選択ボックスがあります。送信ボタンをクリックすると、スクリプトが呼び出されます。

<script>
function ResultPage()
{
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)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
 var select = document.getElementById('users');
 var sem = select.options[select.selectedIndex].value;
 var uurl = "eex4.php?q=" + sem;

xmlhttp.open("GET",uurl,true);
xmlhttp.send();
}
</script>

選択したオプションのselectboxの値を渡し、次のphpファイルに送信する必要があります。

eex4.php

<?php
$schm = $_GET['sem'];
$txt1 = "Semester";
echo $txt1 ." ". $schm;
?> 

私の期待される結果は次のとおりです。

「Semester[選択したオプションの値]」ですが、単に「Semester」と表示されています

誰でもエラーを見つけることができます..

4

6 に答える 6

2

使用する

$schm = $_GET['q'];

qここを通過しているので

var uurl = "eex4.php?q=" + sem;

問題は、送信ボタンをクリックするとフォームにデータが投稿されeex4.php、表示されるだけSemesterです。

変化する

<input type="submit"

<input type="button"

したがって、このボタンをクリックすると、ページを更新せずにコンテンツがページに読み込まれます。

于 2013-03-16T12:28:58.103 に答える
0

ajaxの部分はw3schoolsから取得されました。交換するだけです$schm = $_GET['sem']; to $schm = $_GET['q'];

于 2013-03-16T12:31:05.240 に答える
0

変化する

var uurl = "eex4.php?q=" + sem;

var uurl = "eex4.php?sem=" + sem;

eex4.phpで「sem」を取得しているが「q」を渡しているため

于 2013-03-16T12:31:37.337 に答える
0

変化する

$schm = $_GET['sem'];

$schm = $_GET['q'];
于 2013-03-16T12:33:49.253 に答える
0

あなたはスルーで価値を渡していますq

$schm = $_GET['q'];
于 2013-03-16T12:34:17.877 に答える
0
   <body>
  <div id="txtHint"></div>
  <form method="post" action="eex4.php">
  <label for="text_2">Select the Scheme:&nbsp;&nbsp;&nbsp;</label>
  <select name="users" id="users">
    <option value="">Select:</option>
    <option value="1">Sem1</option>
    <option value="2">Sem2</option>
    <option value="3">Sem3</option>
    <option value="4">Sem4</option>
    <option value="5">Sem5</option>
    <option value="6">Sem6</option>
  </select>
  &nbsp;&nbsp;&nbsp;
  <input type="submit" value="Submit" name="btn" onClick="return ResultPage()"/>
</form>
</body>



<script>
function ResultPage()
{
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)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
 var select = document.getElementById('users');
 var sem = select.options[select.selectedIndex].value;
 var uurl = "eex4.php?q=" + sem;

xmlhttp.open("GET",uurl,true);
xmlhttp.send();
return false;
}
</script>

eex4.php

<?php
$schm = $_GET['sem'];
$txt1 = "Semester";
echo $txt1 ." ". $schm;
?> 
于 2013-03-16T12:37:52.590 に答える