你好,我正在尝试将两个变量从select菜单传递到ajax邮政编码。
以下是“选择”菜单:
<?php echo "<select name='status' id='$id' idc='$idc'>" ?>在这里,我不确定这是否被宣布为这样。我的意思是把变量放在选择菜单中。
在此之前声明的变量如下:
$idc = $row['userID'];这就是我把变量发送给POST方法的问题
selectstatus = $("select[name=status]").val();
var id = $(this).attr('$id');
var idc = $(this).attr('$idc');
$.ajax({
type: "POST",
url: "selectbackend.php",
data: {"selectstatus": selectstatus, "id": id, "idc": idc},某种意义上说,它根本没有传递任何东西。问题可能在哪里?
发布于 2013-10-04 20:23:47
您正在查找属性名称'$id‘和'$idc',但是您的属性名为'id’和'idc',因此id和idc变量将是未定义的。
这应该能起作用:
selectstatus = $("select[name=status]").val();
var id = $(this).attr('id'); // id, not $id
var idc = $(this).attr('idc'); // idc, not $idc
$.ajax({
type: "POST",
url: "selectbackend.php",
data: {"selectstatus": selectstatus, "id": id, "idc": idc },
// ...
});发布于 2013-10-04 20:22:48
var sel = $("select[name='status']");
var id = sel.attr('id');
var idc = sel.attr('idc');
$.ajax({
type: "POST",
url: "selectbackend.php",
data: {"selectstatus": sel.val(), "id": id, "idc": idc}
});发布于 2013-10-04 20:23:14
使用html5,您可以从data-开始定义自定义属性
<?php echo "<select name='status' id='$id' data-idc='$idc'>" ?>在客户端,您可以获得以下值
var selectstatus = $("select[name=status] option:selected").val();
var id = $("select[name=status]").attr('id');
var idc =$("select[name=status]").attr('data-idc');
$.ajax({
type: "POST",
url: "selectbackend.php",
data: {"selectstatus": selectstatus, "id": id, "idc": idc
}
});建议:可能需要对某些事件(如onchange )发出ajax请求
https://stackoverflow.com/questions/19190002
复制相似问题