无法使用ajax在php函数中传递值

时间:2019-09-13 17:01:31

标签: javascript php jquery ajax

我为我的网站创建了功能,用户将根据所单击的图像单击图像,并显示所单击图像的详细信息,因此我创建了 onclick 函数,并传递该图像 ID < / strong>使用ajax函数,我将图像ID传递到PHP文件中,并将该ID传递到post方法中,同时将该变量传递到PHP类函数中。我的问题是脚本ID即将到来,但是php文件我无法获取该变量,我不明白这是什么问题。请帮助我找出这个问题。

这是具有onclick功能的可点击图片

<div class=\"col-md-3\">
       <div class=\"single-new-trend\">
            <a href=\"#\" id='BandChangeImg$BraproId' onclick='ImageChange($BraproId);'>
               <img src=\"$BraProImg\" alt=\"$BraProName\"></a>
       </div>
</div>

这是我的ajax脚本

function ImageChange(x) {
    var BrandName = x;

    alert(BrandName);

    $.ajax({
        url: 'validate/brandImage.php',
        method: 'POST',
        dataType: 'json',
        data: {BrandId:BrandName},
        success:function(data){
            //alert(data);
            if($.trim(data))
            {
                alert("Success!");
            }else{
                alert("Failed!")
            }
        }
    });
}

最后一个我的PHP文件

<?php

include("../db/mySqlDBi.class.php");
$DBConn = new mySqlDB;

$BrandId = $_POST['BrandId'];


include("../classes/personlized.class.php");
$personlized = new personlizedClass;

$result=$personlized->DisplayBrandProductDetails($BrandId);



echo "<script>alert('12334');</script>";

?>

1 个答案:

答案 0 :(得分:1)

您有

dataType: "json",
$.ajax呼叫中

。 jQuery会尝试将响应解析为JSON,如果失败则将显示错误。

脚本正在发送

echo "<script>alert('12334');</script>";

那是HTML,而不是JSON,因此会发生上述错误。

将其更改为dataType: "html"或将PHP更改为类似的

echo json_encode("Brand is $BrandId");