[英]magento newsletter success message popup
我要創建一個彈出消息框,該框在用戶訂閱新聞通訊后顯示
“您的訂閱已被確認[確定]”
它必須在javascript或jquery中,因為我只想在magento前端區域中對其進行修改
它類似於彈出此Magento新聞通訊成功消息的消息,但最終沒有正確答案和無效鏈接
其他信息:我的Magento版本。 1.14.1.0
我有一些代碼,並將其放在subscribe.phtml中,但它不起作用
<script type="text/javascript">
var formdata = {'email': jQuery('input[name=email]').val()};
jQuery(document).ready(function() {
jQuery('.btn-subs').click(function(){
jQuery.ajax({
method: "POST",
url: "<?php echo Mage::getBaseUrl() ?>newsletter/subscriber/new/",
data: formdata,
datatype: 'json'
})
.success(function( data ) {
alert( "Your Subscription has been confirmed" );
})
.error(function(data){
alert(data);
console.log(data);
})
});
});
</script>
Magento的內置通知系統非常完善,Inchoo對此進行了詳盡的解釋: http ://inchoo.net/magento/magento-frontend/utilizing-magento-notification-system/
我有點猜測這並不是您要查找的內容,因為您明確聲明必須使用javascript或jquery完成。 您是否意識到,magento控制器操作可能基本上停留在同一頁面上,但在訂閱某人到新聞稿頁面后添加了通知?
這篇文章( https://magento.stackexchange.com/questions/5063/reliable-way-to-redirect-to-last-page/5086 )幫助我實現了在沒有重定向到其他頁面的頁面上獲得通知,只是重新加載了同一頁面。
如果您真的堅持只使用js / jquery,我的直覺是簡單的警報就足夠了。 默認情況下,這僅給您一個“確定”按鈕,但是我自己看不到在動作完成后需要“取消”按鈕,除非我猜想這會撤消對新聞簡報的訂閱。
如果不是這種情況,您能否提供更多有關您要實現的目標以及僅使用js / jquery 為何重要的信息?
親切的問候,
湯姆
您可以異步發布到控制器(AJAX),但是默認情況下,它不會給您任何有意義的驗證成功的信息。
您需要做的是擴展新聞通訊/訂閱者/新的(不要更新核心文件,任何更新都將清除您的更改。)
這可能會有所幫助: http : //inchoo.net/dev-talk/how-to-extend-magento-core-controller/
基本上,您想要做的是創建一個新的控制器動作,該動作將執行現有控制器幾乎所有的工作,但是,完成后它應該回顯數據,以便前端解析在ajax響應中,而不是進行重定向。 另外,您將希望刪除通常添加的會話成功消息。 (它們會在下一頁加載時顯示。)
因此,在現有控制器的基礎上為新控制器建模:
應用程序/代碼/核心/法師/新聞通訊/控制器/SubscriberController.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.