我试图通过使用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的警报消息中解析了值时,为什么没有将值解析为页面?
答案 0 :(得分:0)
您(几乎可以肯定)从您正在调用的PHP脚本中获取预期结果。
如果你在之前插入怎么办?
$('#roomsavailable').replaceWith(data);
,这一行alert($('#roomsavailable').length)
? - 昆汀然后我得到
0
@Quentin - Troels Johannesen
问题是,$('#roomsavailable')
找不到任何带有该ID的元素,因此没有任何内容可以替换为您获得的数据。
您需要确保文档中存在具有该ID的元素。
答案 1 :(得分:-1)
请将_GET变量添加到网址。
并删除&#34;类型&#34;和&#34;数据&#34;变量完全。