我有这段代码 -
<form method="post" action="generate.php">
<select name="test" id="Test">
<?php
$i=0;
foreach($testName as $name){
?>
<option value="<?php echo $name;?>"><?php echo $testName[$i];?></option>
<?php $i++; } ?>
</select>
<input type="submit" name="submit" value="Generate">
</form>
如何以可以在同一个php页面中使用它的方式存储用户选择的值?
答案 0 :(得分:1)
使用javascript / jquery将值存储在隐藏字段中,如:
<input type="hidden" name="hidden" id="hidden">
并在select元素上调用onchange
事件。
<select name="test" id="Test" onchange="test()">
编写相应的js函数,
<script>
function test()
{
var selectedval=$("#Test").val(); // get selected value
$("#hidden").val(selectedval); // set the value of hidden field
}
</script>
答案 1 :(得分:0)
使用javascript / jquery将值存储在隐藏字段中,如:
<input type="hidden" name="hidden" id="hidden">
编写一些jQuery代码,在下拉列表中为隐藏字段赋值:
<script src="PATH/TO/JQUERY"></script>
<script>
$(function(){
$("#Test").live("change", function() {
$("#hidden").val($(this).val());
});
});
</script>
答案 2 :(得分:0)
您可以设置表单元素的onchange处理程序,以便在选择表单选项时运行javascript。这是一个例子(使用你的代码):
<html>
<head>
</head>
<body>
<select name="test" id="Test" onchange="formChangeFunc(this)">
<?php
$i=0;
foreach($testName as $name)
{
?>
<option value="<?php echo $name;?>"><?php echo $testName[$i];?></option>
<?php
$i++;
}
?>
</select> <input type="submit" name="submit" value="Generate">
</form>
<script>
function formChangeFunc(sel) {
alert(sel.value);
document.getElementById('divIdToInsert').innerHtml(sel.value);
}
</script>
<div id="divIdToInsert"></div>
</body>
</html>
当您更改选项时,该示例应该为您提供警报弹出窗口。这也应该将值插入指定的div容器中。