在Magento中返回值

在Magento中返回值,magento,magento-1.8,Magento,Magento 1.8,以下是控制器中返回产品值的函数 public function productsAction() { $sku=$this->getRequest()->getparam('subvalue'); $_product = Mage::getModel('catalog/product')->loadByAttribute('sku', $sku); $upsell_product_collec

以下是控制器中返回产品值的函数

public function productsAction()
     {

            $sku=$this->getRequest()->getparam('subvalue');
            $_product = Mage::getModel('catalog/product')->loadByAttribute('sku', $sku);

            $upsell_product_collection = $_product->getUpSellProductCollection();
            $upsel=$upsell_product_collection->addAttributeToSelect('product_type')
            ->addAttributeToFilter('product_type', 133);

            $products1 = $_product->getData();
            return $products1;
     }
下面是在前端获取值的ajax请求

$.ajax
  ({
        type: "POST",
        url: "<?php echo $this->getUrl('finder/index/products');?>",
      data:"subvalue="+subval, 
      success: function(response) 
      {     
             alert(response);
            $("#responseproducts").html(response);

       };
  });
$.ajax
({
类型:“POST”,
url:“”,
数据:“subvalue=“+subval,
成功:功能(响应)
{     
警报(响应);
$(“#responseproducts”).html(响应);
};
});
我无法获取前端中的值。请告诉我如何获取前端中的值

在php中解码为JSON:

return json_encode($products1);
并用javascript对其进行解码:

JSON.parse(response);
这应该行得通。之后,您可以使用以下工具进行测试:

console.log(response);

如果成功发送ajax请求,则在控制器操作中添加此代码

$response['prodcutdata'] = $products1;
$this->getResponse()->setBody(Mage::helper('core')->jsonEncode($response));
return;
之后,在ajax请求成功中,按如下方式访问它:

alert(response.prodcutdata);

您是否收到任何js错误?请尝试将值作为json返回。遵循此操作不会出现任何js错误