我想在Magento中設置jquery ajax。我已經成功設置了一個自定義頁面,並試圖在該頁面上設置一個ajax。 jQuery的作品,但阿賈克斯似乎沒有做任何事情。奇怪的是我沒有得到任何錯誤。 我config.xml文件看起來是這樣的:在Magento中設置Ajax調用
<?xml version="1.0"?>
<config>
<modules>
<JJ_LooseDiamonds>
<version>0.1.0</version>
</JJ_LooseDiamonds>
</modules>
<frontend>
<routers>
<loosediamonds>
<use>standard</use>
<args>
<module>JJ_LooseDiamonds</module>
<frontName>loosediamonds</frontName>
</args>
</loosediamonds>
</routers>
<layout>
<updates>
<loosediamonds>
<file>loosediamonds.xml</file>
</loosediamonds>
</updates>
</layout>
</frontend>
<global>
<helpers>
<loosediamonds>
<class>JJ_LooseDiamonds_Helper</class>
</loosediamonds>
</helpers>
<blocks>
<loosediamonds>
<class>JJ_LooseDiamonds_Block</class>
</loosediamonds>
</blocks>
</global>
</config>
然後,我的佈局是這樣的:
<?xml version="1.0"?>
<layout version="0.1.0">
<loosediamonds_index_index>
<reference name="root">
<action method="setTemplate"><template>page/2columns-left.phtml</template> </action>
</reference>
<reference name="left">
<block type="loosediamonds/left" name="loosediamonds_left" template="loosediamonds/left.phtml"/>
</reference>
<reference name="content">
<block type="loosediamonds/index" name="loosediamonds_index" template="loosediamonds/index.phtml"/>
<block type="loosediamonds/product" name="loosediamonds_product" template="loosediamonds/product.phtml" />
</reference>
</loosediamonds_index_index>
</layout>
我index.phtml這是主要的自定義頁面有一個Ajax實現:
<script type="text/javascript">
(function($) {
$(".diamondtable tr").click (function() {
var data = "id="+$(this).data("id");
try {
jQuery.ajax({
url:"<?php echo $this->getUrl('product.phtml') ?>",
dataType:'jsonp',
type:'post',
data:data,
success:function (data) {
alert (data);
}
});
} catch (e) {
alert (e);
}
})
})(jQuery)
並且product.phtml具有檢索產品信息的代碼a nd應該在技術上將其傳回給index.phtml。我已經瀏覽了幾個例子,但沒有解決我遇到的問題。如果有人能夠幫我解決我的困境,我就會wan der不前。謝謝。
您是否嘗試過使用Firebug for Firefox或Chrome Inspect Element來查看發佈了哪些數據並從服務器返回? –
當我刪除dataType:'jsonp'時,我的警報在成功時被觸發。但是,我得到了整個HTML代碼,而不是隻是一個回聲,這是我在products.phtml –
看看@ http://stackoverflow.com/questions/7448617/ajax-in-magento它會很多更好地把你的控制器中的ajax邏輯,而不是在phtml文件 –