Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery.ajax,而不是通过GET请求解析_Javascript_Php_Jquery_Ajax - Fatal编程技术网

Javascript jQuery.ajax,而不是通过GET请求解析

Javascript jQuery.ajax,而不是通过GET请求解析,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我试图通过使用AJAX的GET请求来解析select选项字段中的值。我可以通过url解析该值——通过在jQuery函数中使用url警报检查url。但是我无法在执行GET请求的页面中检索该值 jQuery.ajax <script> $('.roomAvailable').change( function roomChanges(data) { var over = '<div id="overlaysRooms">' +

我试图通过使用AJAX的GET请求来解析select选项字段中的值。我可以通过url解析该值——通过在jQuery函数中使用url警报检查url。但是我无法在执行GET请求的页面中检索该值

jQuery.ajax

<script>
  $('.roomAvailable').change(
   function roomChanges(data) {
     var over = '<div id="overlaysRooms">' 
              + '<div id="loading"><div class="loaders"></div><div id="loadertextsearch">Vent Venligst...</div>' 
              + '</div>';
     $(over).appendTo('.rooms');
     $('.rooms').addClass('overlaysRooms');
     $.ajax({
       type: 'GET',
       data: {
         'arrival': '<?php echo strval($_GET[' arrival ']); ?>',
         'departure': '<?php echo strval($_GET['departure ']);?>',
         'adults': $("#adults option:selected").val(),
         'hotelId': '<?php echo strval($_GET[' hotelId ']);?>',
         'room1': $("#rooms option:selected").val()
       },
       url: '<?php echo $baseUrl ?>/hotels/hotelRoomAvailable.php',

       success: function(data) {
         alert(this.url);
         $('#roomsavailable').replaceWith(data);
         $('#overlaysRooms').remove();
       },
       error: function(xhr) {}
     })

   });

</script>
hotelRoomAvailable.php:

<?php
  var_dump(intval($_GET['adults']));
?>
警报值:


所以当我用var_dump检索成人的价值时,我什么也得不到。为什么当我在jQuery的警报消息中看到值被解析时,该值没有被解析到页面上?

请将_GET变量添加到url


并完全删除类型和数据变量。

您几乎肯定会从正在调用的PHP脚本中得到预期的结果


如果您插入,就在之前 $'roomsavailable'.replaceWithdata;,线路 警报$'roomsavailable'。长度?-昆廷


然后我得到0@Quentin–Troels Johannesen

问题是,$'roomsavailable'找不到任何具有该id的元素,因此没有任何东西可以替换为您获得的数据


您需要确保文档中存在具有该id的元素。

尝试打开浏览器开发人员工具或使用第三方工具(如fiddler)查看实际发送到服务器的请求,以验证您的代码是否正在执行您认为正在执行的操作。alertthis.url;的值是多少@Quentin清除值是,例如,如果在$'roomsavailable'.replaceWithdata;,之前插入;,行警报$'roomsavailable'.length?然后我得到0@Quentina手动添加它们是一种可怕的方法。现有的处理数据的方法要好得多,因为它会自动避开数据。删除类型不会有什么不同。顺便说一句,我倾向于在url字符串上使用encodeUri,它负责转义和编码问题。我不认为这很可怕,因为给猫剥皮的方法不止一种……但我想说,我今天学到了一些东西,并将尝试你提到的@Quentin这种方法。Tks也是。有-@TroelsJohannesen-你会得到一个0,带有警报$'roomsavailable'。长度证明没有。加载文档时可能有,但运行代码时没有。可能您已经对其调用了replaceWith,它会将其删除。正是问题所在已被调用,因此之后不退出。非常感谢昆汀,谢谢你的解释@昆廷