Javascript代码不能用php编码器执行


Javascript code is not executing with php codeigniter

我在我的项目中使用了一些使用过的代码

下面的代码用于在视图

中写入的愿望列表中添加产品
<p class="p"><a<?php  echo "onclick='addtowishlist($product->id)'";  ?>>Add To Wishlist</a></p>

的Javascript代码
  function addtowishlist(pid) {   remoteCall("cart/addtowishlist/"+pid,"","loadlist"); }
 function loadlist() { alert(sResponse); }

这是我的控制器命名购物车

   public function addtowishlist($pID)
    {
    $data=$this->Product_model->addtowishlist($pID);
    echo $data;
    }

这是我的模型命名Product_model

function addtowishlist($ProductID) { echo "Added succesfully";
}

这是我在javascript中使用的ajax远程调用函数

enter code herefunction remoteCall(sUrl, sQueryStr, sCalledBy){
uri = sUrl;
callingFunc = sCalledBy;
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
    alert ("Your browser does not support AJAX!");
    return;
}
if (xmlHttp) 
{
    xmlHttp.onreadystatechange = stateHandler;
    xmlHttp.open("POST", sUrl, true);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(sQueryStr);
}   }

我只想显示在控制器中写入的消息,当单击添加到愿望列表链接时显示

这是如何调用函数

<p class="p"><a onclick="addtowishlist(<?php echo $product->id; ?>)">Add To Wishlist</a></p>

我认为问题是因为如果URL,为添加URL到您的客户端代码使用site_url()函数。修改这部分:

 function addtowishlist(pid) {   remoteCall("cart/addtowishlist/"+pid,"","loadlist"); }
 function loadlist() { alert(sResponse); }

:

function addtowishlist(pid) {   remoteCall("<?php echo site_url('cart/addtowishlist/'+pid) ?>","","loadlist"); }
 function loadlist() { alert(sResponse); }

当然,这部分代码应该在PHP文件中,以便能够处理PHP部分。


只是为了记录处理这些情况的最佳方法是使用JQuery库的AJAX操作和添加相关的数据到一些属性,如data-href或其他的