2015-10-04 67 views
0

我有一个jQuery与Ajax后,其中一个工作从<select>,另一个形式<input>。如果两个输出文件都是travel_data.php通过ajax发送数据一次

我想一次发送<select><input>的结果,一次使用了php文件。

data: {f_sz1: f_sz, f_ar1: f_ar, gy_sz1: gy_sz, gy_kor1_1: gy_kor1, gy_kor2_2: gy_kor2, gy_kor3_3: gy_kor3, gy_kor4_4: gy_kor4, gy_kor5_5: gy_kor5} 

你能帮助我吗?

感谢大家对前请先帮助, 姿态

$("input").change(function() { 

    var gy_kor1 = ""; 
    var gy_kor2 = ""; 
    var gy_kor3 = ""; 
    var gy_kor4 = ""; 
    var gy_kor5 = ""; 

    $("input#gy1.gyk1").each(function() { 
     gy_kor1 += $(this).val(); 

    }); 
    $("input#gy2.gyk2").each(function() { 
     gy_kor2 += $(this).val(); 

    }); 

    $("input#gy3.gyk3").each(function() { 
     gy_kor3 += $(this).val(); 

    }); 
    $("input#gy4.gyk4").each(function() { 
     gy_kor4 += $(this).val(); 

    }); 

    $("input#gy5.gyk5").each(function() { 
     gy_kor5 += $(this).val(); 

    }); 

    $.ajax({ 
     type: "POST", 
     url: "travel_data.php", 
     data: {gy_kor1_1: gy_kor1, gy_kor2_2: gy_kor2, gy_kor3_3: gy_kor3, gy_kor4_4: gy_kor4, gy_kor5_5: gy_kor5}, 
     success: function(records){ 
      $("#eredmeny").html((records)); 
     }  
    }); 
}) 


$("select").change(function() { 
    var f_sz = ""; 
    var gy_sz = ""; 
    var gy_kor1 = 3; 
    var f_ar = "<?php echo $f_ar; ?>"; 

    $("#select_f option:selected").each(function() { 
     f_sz += $(this).text(); 
    }); 
    $("#select_gy option:selected").each(function() { 
     gy_sz += $(this).text(); 
    }); 

    $.ajax({ 
     type: "POST", 
     url: "travel_data.php", 
     data: {f_sz1: f_sz, f_ar1: f_ar, gy_sz1: gy_sz, gy_kor1_1: gy_kor1}, 
     success: function(records){ 
      $("#result").html((records)); 
     }  
    }); 
}) 
.change(); 

回答

0

你需要做的是确保你要发送的所有数据将被存储在一个对象变量。你可以通过指定一个可以被你调用的函数访问的'global'变量来做到这一点。把(推)所有的数据在这个变量中,然后只执行一次ajax。这意味着你将不得不调整你的功能,并确保所有的数据都被捕获到变量中。完成此操作后,您可以调用ajax。你可以将所有这些代码封装在一个新函数中并调用该函数。我希望你明白我的意思。