很抱歉发布已经发布的问题,但是我真的很难让这项功能发挥作用。当我更改选择框选项值时,我希望它在页面刷新或注销时保持不变。我必须使用AJAX / PHP来实现这一点吗?我试图这样做无济于事。 Possible to run DB update function when dropdown is selected
我的代码如下:
echo '<tr>';
echo '<td><input type="text" name="order_no[]" value="' . $row['Orderno'] . '"/></td>';
echo '<td><input type="text" name="order_date[]" value="' . $row['Orderdate'] . '"/></td>';
echo '<td><input type="text" name="order_ordered_by[]" value="' . $row['Orderedby'] . '"/></td>';
echo '<td><input type="text" name="order_supplier[]" value="' . $row['Supplier'] . '"/></td>';
echo '<td><input type="text" name="order_total_price[]" value="' . $row['totalprice'] . '"/></td>';
echo '<td><input type="text" name="order_requested_by[]" value="' . $row['requestedby'] . '"/></td>';
echo '<td>';
echo '<select id ="id" name="id">';
echo '<option value = "1" class = "pending">Pending</option>';
echo '<option value = "2" class = "approved">Approved</option>';
echo '<option value = "3" class ="disapproved">Disapproved</option>';
echo '</select>';
echo '</td>';
echo '</tr>';
答案 0 :(得分:1)
您可以将所选值存储在Cookie中,查看jquery cookie插件。
或者,如果您能够以某种方式识别用户,则可以将值存储在服务器上并立即呈现。但是当你陈述时,即使在注销之后应该保留所选择的值,你仍然需要cookie来存储一些识别令牌。
答案 1 :(得分:1)
听起来所选状态应该是订单的属性。因此,您应该对PHP(或任何服务器端语言)进行ajax调用,以便在selectbox更改时更新状态。选择框本身应该类似于:
echo '<select id ="id" name="id">';
echo '<option value = "1" class = "pending"' . ($row['status'] == 'Pending' ? ' selected=selected' : '') . '>Pending</option>';
echo '<option value = "2" class = "approved"' . ($row['status'] == 'Approved' ? ' selected=selected' : '') . '>Approved</option>';
echo '<option value = "3" class ="disapproved"' . ($row['status'] == 'Disapproved' ? ' selected=selected' : '') . '>Disapproved</option>';
echo '</select>';
我不认为饼干是必要的
答案 2 :(得分:0)
只需执行以下jquery和ajax代码即可执行此操作
$('#id').change(function(){
var val = $('#id').val();
$.ajax({
type: 'POST',
url: '',//url of the file
data: val,
success: function(msg){
}
});
});
答案 3 :(得分:0)
JQuery UI上有一个使用自动填充框的好例子。恕我直言比选择下拉菜更好。 它具有所有AJAX功能,只需几行就可以得到一个有效的例子:
<script>
$(function() {
$( "#birds" ).autocomplete({
source: "search.php",
minLength: 2,
select: function( event, ui ) {
log( ui.item ?
"Selected: " + ui.item.value + " aka " + ui.item.id :
"Nothing selected, input was " + this.value );
}
});
});
</script>