AJAX函数从下拉列表中进行实时预览
我在通过AJAX配置数据的实时预览时遇到了一些麻烦。 我设法使用以下代码进行预览,但我有点陷入如何继续。 我的下一步是显示从同一个表格提供的图像url。 因为我是PHP和AJAX的新手(特别是)我没有进一步使用这段代码。 这就是HTML的样子:
PHP逻辑:
$query = $conn->prepare("SELECT * FROM items WHERE user_id = $userID"); $query->execute();
HTML表单:
Ajax / JS脚本:
$("#sel1").on("change", function(){ function clearpost(){ $("#results").val(""); } var selected = $(this).val(); makeAjaxRequest(selected); function makeAjaxRequest(opts){ $.ajax({ type:"POST", data:{opts: opts}, url:"views/itemOverview.php", success:function(res){ $("#results").html("Uw items : " + res + "
"); } }) } })
PHP文件:
echo '
'; print_r($_POST); echo '';
这是结果:
所有反馈都非常感谢! 亲切的问候
在你的情况下,PHP文件应该返回你可以在ajax成功回调中使用的json对象。 请参阅从PHP脚本返回JSON从服务器返回json。 在对象示例代码的情况下,
$res = new stdClass(); $res->name = "sample"; // from db $res->imageUrl = "img/img1.png";// from db echo json_encode($res);
在您的js文件中,您可以执行类似的操作,
$.ajax({ type:"POST", data:{opts: opts}, url:"views/itemOverview.php", datatype: "text/json", // this is preferred when receiving json data success:function(res){ // res is json object. res.name & res.imageUrl are it's property $("#results").html("
Uw items : " + res.name + "
"); } })