繁体   English   中英

如何使用AJAX在PHP中将选择框值作为数组从一个页面传递到另一页面?

[英]How to pass the select box value as an array using AJAX from one page to another in PHP?

var message = $("#send_message").val();

    var Teaminput = $("#sms_reminder_team").val();
    for (var i = 0; i <Teaminput.length; i++) 
    {
       var team=Teaminput[i];
    }

    var Memberinput = $("#sms_reminder_members").val();
    for (var i = 0; i <Memberinput.length; i++) 
    {
    var members=Memberinput[i];

  }

获得2个变量作为数组成员和团队

var parameter = "message="+message+"&team="+team+"&members="+members;
  $.ajax({
  url: base_url+'ajaxfiles/dir_sendmessage',
  type: 'POST',
  data: parameter,
  success: function(data)
  {
    document.getElementById('check').innerHTML = data; 
  }
  });

如何使用AJAX将两个数组变量从当前页面发送到“ dir_sendmessage”。

更改以下行

var parameter = "message="+message+"&team="+team+"&members="+members;

var parameter = "message="+message+"&team="+JSON.stringify(team)+"&members="+JSON.stringify(members); 

编辑:也这样修改

var team = [];
var members = [];
for (var i = 0; i <Teaminput.length; i++) 
{
   team=Teaminput[i];
}

var Memberinput = $("#sms_reminder_members").val();
for (var i = 0; i <Memberinput.length; i++) 
{
   members=Memberinput[i];
}

注意:在循环的每一行中添加var时,它将声明一个新变量。 您必须像上面的代码一样进行编辑

使用JSON.stringify()函数更新代码后,您将可以在PHP代码中以数组形式获取值。

Ajax不会直接将Jquery数组传递给PHP

首先,理想情况下,您应该以JSON格式发送或使用array.tostring()(可以避免这种情况)

但是,如果必须将其作为数组发送,则可以尝试以下操作:

$.ajax({ 
url: base_url+'ajaxfiles/dir_sendmessage', 
type: 'POST',
 data: {team:team, members: members}, 
success: function(data) { 
document.getElementById('check').innerHTML = data; } });
var message = $("#send_message").val();
    var teaminputt = $("#sms_reminder_team").val();
    team = new Array();
    members = new Array();
    for (var i = 0; i <teaminputt.length; i++) 
    {
       var team=teaminputt[i];
    }

    var memberinput = $("#sms_reminder_members").val();
    for (var i = 0; i <memberinput.length; i++) 
    {
    var members=memberinput[i];

    }

    var parameter = "message="+message+"&team="+team+"&members="+members;
    $.ajax({
        url: base_url+'ajaxfiles/dir_sendmessage',
        type: 'POST',
        data: parameter,
        success: function(data)
        {
        document.getElementById('check').innerHTML = data; 
        }
    });
$("#msg-send-btn").click(function() {
      var message = $("#send_message").val();
      var optionsmembers = $('#sms_reminder_members option:selected');
      var members = $.map(optionsmembers ,function(option) {
      return option.value;
      });

// ----使用$ .map获取所有选择的数据作为一个数组。

var postData = {
                  message,
                  members
               }

// ----为避免Json-Stringfy。

 $.ajax({
  url: base_url+'ajaxfiles/dir_sendmessage.php',
  type: 'POST',
  data:{myData:postData},

// -----完美地工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM