我已经尝试了很多&搜索了很多,但我没有找到解决方案。
我有HTML代码
HTML
<form id="program_mode" action="" method="post">
<select name="mode" id="mode">
<option>Select</option>
<option value="<?php echo $vars['url']?>pg/event_calendar/all" <?php if($mode == 'All') echo 'selected="selected"'; ?>>All</option>
<option value="<?php echo $vars['url']?>pg/event_calendar/anytime" <?php if($mode == 'Online') echo 'selected="selected"'; ?>>Online</option>
<option value="<?php echo $vars['url']?>pg/event_calendar/offline" <?php if($mode == 'Offline') echo 'selected="selected"'; ?>>Offline</option>
</select>
</form>
然后我想在php部分选择选项。
所以我写得像
PHP
$mode = $_POST['mode'];
var_dump($mode);
但我没有得到这个价值。我不想提交的事情。只有它才能获得价值。可以吗?
答案 0 :(得分:0)
您确定,如果您想提交表单,可以在下拉列表的onchange事件中使用form.submit()
,如下所示:
<select name="mode" id="mode" onchange="form.submit();">
可以访问PHP中的值,如:
if(isset($_POST['mode'])){
var_dump($_POST['mode']);
//extra code
}
如果您不想提交表单,可以使用jquery
函数选择所选值:然后从选择框中删除onchange事件处理程序:
<select name="mode" id="mode">
并添加以下jquery函数:
$('#mode').change(function(e) {
var val = $(this).val();
alert(val);
});
答案 1 :(得分:0)
<form id="program_mode" action="" method="post">
<select name="mode" id="mode" onchange="val_changed()">
<option>Select</option>
<option value="<?php echo $vars['url']?>pg/event_calendar/all" <?php if($mode == 'All') echo 'selected="selected"'; ?>>All</option>
<option value="<?php echo $vars['url']?>pg/event_calendar/anytime" <?php if($mode == 'Online') echo 'selected="selected"'; ?>>Online</option>
<option value="<?php echo $vars['url']?>pg/event_calendar/offline" <?php if($mode == 'Offline') echo 'selected="selected"'; ?>>Offline</option>
</select>
</form>
你可以使用这个
进行少量jquery <script>
function val_changed()
{
var mode=$('#mode').val();
}
</script>
答案 2 :(得分:0)
如果您希望PHP仅在选项更改时获取值,则应使用JavaScript或jQuery。 包括 jQuery 库:
<script src="http://code.jquery.com/jquery-latest.js"></script>
然后在<script></script>
代码中添加以下代码。
$(document).ready(function(){
$("#mode").change(function(){
$.post("php_file.php", {mode:$(this).val()});
});
});
当选项更改时,jQuery会在后台向php_file.php
发送 POST 请求mode
值。 PHP将负责其余部分。
这通常像提交给PHP文件的表单一样。因此,您将在PHP文件中获得$_POST['mode']
值。