我想在当前PHP文件中使用select值,但没有提交按钮,我该怎么做?
这是我的代码:
<?php
$args = array(
'orderby' => 'name',
'order' => 'ASC',
);
$pays = get_terms( 'pay', $args );
$html = '<form action="#" method="post"><select name="selected_pay" id="selected_pay" >';
foreach ($pays as $pay) {
$html .= '<option value="'.$pay->name.'">'.$pay->name.'</option>';
}
$html .= '</select></form>';
echo $html;
?>
我想这样使用它:
<?php
if (isset($_POST['selected_pay']))
echo $_POST['selected_pay'];
else
echo 'Please select a pay';
?>
答案 0 :(得分:1)
您不需要提交按钮,但无论如何您需要向服务器发送selected_pay的当前值。
例如,您可以在某些事件上执行此操作。 就像将鼠标悬停在某个元素上或甚至在某个特定时间;) 但是你必须定义事件 - 你想要发送/检查的时刻,如果没有点击提交按钮的话。
我猜你真正想要的是每当使用AJAX进行更改时发送/检查该值。您可以将JQuery与onchange事件一起使用。
jQuery('#selected_pay').change(function(){
jQuery.post('script.php', {selected_pay: jQuery(this).val()}, function(data){
jQuery(this).append(data); // show the result from script.php under the select element
})
});
答案 1 :(得分:0)
<?php
$args = array(
'orderby' => 'name',
'order' => 'ASC',
);
$pays = get_terms( 'pay', $args );
?>
<form method="post">
<label for="combineForm">Un Pays</label>
<select name="selected_pay" id="selectedPay" onChange="form.submit()">
<?php
foreach ($pays as $pay) : ?>
<option value="<?php echo $pay->name; ?>"><?php echo $pay->name; ?></option>
<?php endif; endforeach;?>