我没有运气就经历了几个相关的问题。我想将下拉菜单中选择的选项保存到$ _SESSION []而不使用提交按钮,因为我必须在提交表单之前将所选选项放入多个页面。没有使用java脚本的任何帮助
<form method="post" action="consel.php">
<?php
$sql = "SELECT * FROM games WHERE startunix > '$nowtime' ORDER BY starttime LIMIT $offset, $rowsperpage" ;
$retval = mysql_query($sql);
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
echo "<div align='center'><span class='style3'>{$row['home']} VS ".
"{$row['away']} </span></div>".
"<font color='#000000' size='2'>{$row['country']} | {$row['league']} | Time:{$row['starttime']} </font> <br> ".
"<select name='gm[$row[gamecode]|$row[starttime]|$row[home]|$row[away]]' >
<option value=''>Select option</option>
<option value='1'>YES</option>
<option value='2'> NO</option>
<option value='3'>Total Goals</option>
<option value='4'>Total </option>
<option value='5'>Goals</option>
</select>".
"<hr>";
}
?>
<input type="submit" name="play" value="Calculate" />
</form>
答案 0 :(得分:0)
首先,这是与您的php文件交互的ajax脚本。在这里,我将我的名字命名为yesno.php,并将响应命名为我的html页面上的空div。
<script>
function session () {
var xmlhttp = new XMLHttpRequest ();
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById('response').innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open ('GET', 'yesno.php?value='+document.getElementById('id_of_select_field').value, true);
xmlhttp.send ();
}
</script>
然后在您的选择选项中,您只需添加一个事件处理程序,如
<select id="id_of_select_field" onchange="session()">
//options
</select>
在您的代码中,选择字段没有附加ID,因此请添加一个并将ajax( id_of_select_field )中的ID更改为该ID。
所以在你的yesno.php上你只需用
获取值$value = $_GET['value'];
并继续使用您的代码。