Javascript 具有多个数据参数的多个ajax请求

Javascript 具有多个数据参数的多个ajax请求,javascript,php,jquery,html,Javascript,Php,Jquery,Html,请原谅我冗长的解释。。。。在SO上发布帮助我解决头脑中的问题: 我有一个带有两个独立div的主页 用户在文本框中输入一组数据,然后我将这些数据发送到填充两个div的两个页面: var lines = $('textarea').val().split('\n'); //create array from pasted data $.ajax({ type: 'POST', url: 'return.php', data: {lines:lines},

请原谅我冗长的解释。。。。在SO上发布帮助我解决头脑中的问题:

我有一个带有两个独立div的主页

用户在文本框中输入一组数据,然后我将这些数据发送到填充两个div的两个页面:

var lines = $('textarea').val().split('\n');  //create array from pasted data

$.ajax({
      type: 'POST',
      url: 'return.php',
      data: {lines:lines},        
        success:function(data){
        $("#info").html(data); //loads return.php with the data from *lines*                             
          $.ajax({
            type: 'POST',
            url: 'dropDown.php',
            data: {lines:lines},
            success: function(data){
            $("#dropdown").html(data); //loads dropDown.php with the data from *lines*
            }
            });                                      
        }
  });
info使用一个包含大量通用数据的表填充,而dropDown使用用户在文本框中输入的零件号填充潜在客户的下拉列表

这里一切正常

我的目标是允许用户从下拉列表中选择一个客户,然后让它将数据更改回info div,但我不知道如何获取行

在dropDown.php上使用此代码

$_SESSION['lines'] = $_REQUEST['lines'];
 $q = $_SESSION['lines'][0];

$supplierQuery   = "SELECT DISTINCT supplier FROM table where partNumber = '$q'";
下拉列表正确填充,当用户选择客户时,执行以下代码:

<select onChange="selectCustomer(this.value)">
其次,我试图将变量c传递给return.php,因为return.php中有这一行

$c = $_GET['c']; // quote customer
通常我会通过像return.php?c=blahblah这样的操作来利用这一点,但我不确定如何将这一功能引入到上面的AJAX代码中


我很快就要让它工作了

认为问题在于您选择的值:

<select onChange="selectCustomer(this.value)">
查找JS,类似以下内容:

$("select").on("change", function(){
  var optVal = $(this).find("option:selected").val();
  selectCustomer(optVal);
});
<select onChange="selectCustomer(document.getElementsByTagName('option')[this.selectedIndex].value)">

还有@developerwjk所说的;然后用Ajax发送?等等,为什么要通过Ajax发送服务器上已经存在的东西,即会话中的东西?它已经在服务器上了…所以将它发送回服务器完全是浪费带宽,不是吗?这些都是修辞性的问题。好的一点-我的问题是,我第一次加载return.php时,$\u SESSION[lines]没有设置,所以我使用$\u SESSION[lines']=$\u REQUEST['lines']设置它;下次我从dropdown.php加载页面时,我猜请求不再有效了?所以我必须用if来包装它$_会话['行']。在if语句中封装它解决了这个问题!现在让c来填充怎么样?我想到了两个问题,我们解决了上面的一个问题-我不再尝试再次设置会话变量,但现在我仍然停留在使用什么术语将id发送回return.php,以及在返回.php时获取id上。我想我只剩下这些了。我已将ajax调用更改为读取数据:{c:id},因此我认为这会将变量id作为名为c的变量发送到return.php,但我不知道这是否正确,也不知道如何在return.php…aaaaaaaaa时获取它,我找到了答案。我只需要将return.php改为$c=$\u POST['c'];而不是$c=$_GET['c']$_POST[]和$\u GET[],非常有用!但是你不能把它们混在一起。很高兴听到你解决了这个问题。
$("select").on("change", function(){
  var optVal = $(this).find("option:selected").val();
  selectCustomer(optVal);
});
<select onChange="selectCustomer(document.getElementsByTagName('option')[this.selectedIndex].value)">