1

这是我的jQuery:

$('#Save').click(function () {
  var realvalues = new Array(); //storing the selected values inside an array

  $('#Privilege :selected').each(function (i, selected) {
    realvalues[i] = $(selected).val();
  });

  $.ajax({
    type: "POST",
    traditional: true,
    url: "http://localhost:8081/crownregency/UpdateOrCreateOrDeleteUser.php",
    data: {
      Privilege: realvalues,
      ID: '1'
    },
    success: function (data) {
      alert(data, 'Status');
      location.reload();
    }
  });
});

这是我的PHP。

我已经阅读了很多关于序列化的文章,但似乎不起作用,我想要实现的是将下拉列表中的选定项目发送到数组中并通过 ajax 将其发送到 php。但是将数组发送到 php 似乎不起作用。帮助任何人?

4

1 回答 1

5

您的代码没问题,只需删除传统的:true并且您的代码似乎可以工作

$('#Save').click(function(){

    var realvalues = new Array();//storing the selected values inside an array
    $('#Privilege :selected').each(function(i, selected) {
        realvalues[i] = $(selected).val();
    });

    $.ajax({
        type: "POST",
        url: "http://localhost:8081/crownregency/UpdateOrCreateOrDeleteUser.php",
        data: {Privilege: realvalues, ID: '1'},
        success:function(data){
                $("#subscrres").html(data)
            }
    });
});

HTML

<form method="post">
<select id="Privilege" multiple="multiple">
<option value="yahoo">yahoo</option>
<option value="chrome">chrome</option>
<option value="mozilla">mozilla</option>
</select>
<input type="button" id="Save"/>

</form>

更新或创建或删除用户.php

<?php
if(isset($_POST['Privilege'])){
$myvar  =$_POST['Privilege'];
foreach($_POST['Privilege'] as $one)
echo $one."<br/>";

}
?>
于 2012-08-31T04:41:49.390 回答