我目前正在使用角色ID列出表中的大量用户。 使用选择下拉列表收集角色ID值,然后按提交。这将显示下表,其中包含具有该特定角色的所有用户。这样做的方法是,在提交表单时,在我的选择框的$ _POST内返回id。我想要做的是根本不使用提交按钮,我希望能够滚动浏览不同的角色,当我点击选择中的其他角色时,它会自动更新下面的表格,而无需发布。< / p>
让我们说我的选择框叫做角色:
<select id="role">
选项包括:
id: 1, name: blah1
id: 2, name: blah2
我一直在努力尝试使用ajax来完成这项工作,并使用更改功能将数据发布回PHP。这是我的代码:
$(document).ready(function() {
$('#role').change(function(){
var role_id = $('#role').val();
$.ajax({
url: 'assign-roles-2.php',
data: {"roleID":role_id},
type: 'post',
success:function(data){
$('#section').slideDown();
}
});
});
$('#role').trigger("change");
});
我在PHP中也有这个:
$role_id = trim($_POST["roleID"]);
但是这会返回null。我如何从select输入中获取值并使用它在PHP中设置此role_id变量而不提交表单?
答案 0 :(得分:2)
我假设您对选项元素的描述:id: 1, name: blah1
并未反映其标记,并且它们的定义如此......
<option value="1">blah1</option>
如果是这样,那么以下内容应该可以正常工作。
var role_id = $('#role').find('option:selected').val();