总结一下我在这里要实现的目标:在 的内部,当在下拉列表中选择一个选项时,将使用内部的事件index.php调用一个函数onchange="displayData(this)<select>POST此函数对 PHP 页面 ( target.php)执行 AJAX请求,value其中包含所选选项的dataPHP页面显示div在页面上的a里面这是使用 jQuery 的函数:function displayData(str){ $.ajax({ url: "target.php", type: "POST", data: {"value": str.value}, success: function(data){ console.log(data); } }); $('#my-div').load('target.php');}为了方便起见,PHP 页面如下所示:<?php echo $_POST['value']; ?>data登录时success,一切似乎都正常, 的值$_POST['value']正确显示在控制台中。但是在页面本身中,我收到一个错误:注意:未定义索引:值对不起,如果它看起来有点愚蠢,但我不知道我做错了什么......所以我想问问社区。谢谢你们的帮助!干杯。
3 回答
呼啦一阵风
TA贡献1802条经验 获得超6个赞
请试试这个。你需要从target.php页面返回结果
function displayData(str){
$.ajax({
url: "target.php",
type: "POST",
data: {"value": str.value},
success: function(data){
$('#my-div').html(data);
}
});
}
心有法竹
TA贡献1866条经验 获得超5个赞
嘿,问题很简单,如果您将从 ajax 获取的数据值发布到 target.php,那么 $ ('#my-div').load('target.php')应该在 ajax 成功函数中,您必须使用这样的 html 函数来放置数据$("#my-div").html(data)。它会直接在div中加载html格式的数据。
慕姐8265434
TA贡献1813条经验 获得超2个赞
如果您使用 .load() ,您的浏览器将向 target.php 发出另一个 GET 请求并显示它,因此您的 $_POST 将为空。$('#my-div').html(data)
您可以在 success: of ajax 中使用,或者您可以在 php 中使用 $_GET 而不是 $_POST 并像这样在 url 中传递变量
$('#my-div').load('target.php?value='str.value);
- 3 回答
- 0 关注
- 195 浏览
添加回答
举报
0/150
提交
取消