JavaScript警报不工作
我已经尝试了很多方法让JavaScript警报弹出,但它不起作用 我的网站是SilverStripe 3.1。我正在使用jQuery JavaScript文件或web控制台中没有错误。页面上已加载JavaScript文件。所有其他功能(.remove、.ajaxbtn、.gotocart和checkout)都能正常工作。只有警报呼叫不起作用 这是我的JavaScript文件:JavaScript警报不工作,javascript,jquery,button,alert,silverstripe,Javascript,Jquery,Button,Alert,Silverstripe,我已经尝试了很多方法让JavaScript警报弹出,但它不起作用 我的网站是SilverStripe 3.1。我正在使用jQuery JavaScript文件或web控制台中没有错误。页面上已加载JavaScript文件。所有其他功能(.remove、.ajaxbtn、.gotocart和checkout)都能正常工作。只有警报呼叫不起作用 这是我的JavaScript文件: (function($) { $(document).ready(function() {
(function($)
{
$(document).ready(function()
{
$('.ajaxbtn').on( 'click', function()
{
event.preventDefault();
var link = $(this).attr('href');
var request = $.ajax(
{
url: link,
type: 'GET',
dataType: 'html'
});
$('.ajaxbtn').ajaxSuccess(function()
{
alert('AJAX request successfully completed');
});
alert('AJAX request successfully completed');
});
$('body').on( 'click', '.remove',function()
{
//event.preventDefault();
var link = $(this).attr('href');
//console.log(dataid);
var request = $.ajax(
{
url: link,
type: 'GET',
dataType: 'html'
});
});
$('body').on( 'click', '.checkout', function()
{
//event.preventDefault();
var link = $(this).attr('href');
//console.log(dataid);
var request = $.ajax(
{
url: link,
type: 'GET',
dataType: 'html'
});
});
$( '.gotocart' ).click(function()
{
alert('asdasdas');
var link = $(this).attr('href');
var request = $.ajax(
{
url: 'member-area/product-page-2/product-gallery/OrderedTemplate/',
type: 'GET',
dataType: 'html'
});
request.done(function( msg )
{
$('.cartcontent' ).replaceWith(msg);
});
});
});
}(jQuery));
以下是我的按钮的html:
<button class="ajaxbtn btn btn-primary" href="$Top.Link(Cart)?id=$ID">Pick</button>
<button class="remove btn btn-primary" href="$Top.Link(RemoveItem)?id=$ID">Remove</button>
<button class="checkout pull-right btn btn-primary" style="margin-right:10px;" href="$Top.Link(CheckOut)?id=$ID">Check Out</button>
<button class="gotocart pull-right btn btn-primary" style="margin-right:20px" href="$Top.Link(gotoCart)">Go to cart</button>
拾取
去除
退房
去购物车
您是否尝试过在$.ajax
函数中编写成功
?大概是这样的:
var request = $.ajax({
url: link,
type: 'GET',
dataType: 'html',
success: function(data) {
alert('AJAX request successfully completed');
}
});
您还可以尝试使用在第二次ajax调用中使用的request.done
。我认为.ajaxSuccess()应该附加到文档中,而不是特定的元素。So$(document.ajaxSuccess()代码>
- 此外,您可能应该将其移动到按钮的单击处理程序之外,否则每次单击按钮时都会一次又一次地绑定成功事件
在$.ajax
调用中添加成功
回调
var request = $.ajax(
{
url: link,
type: 'GET',
dataType: 'html'
});
你有多个警报,它们都没有开火吗?似乎在这个JSFIDLE中工作:我发现了问题,我意外地关闭了google chrome中的弹出窗口功能。谢谢,顺便说一句~很好+1从jQuery1.8开始,.ajaxSuccess()
方法只能附加到文档中。。。查看javascript区域的底部。。尝试了以下操作:$(document).ajaxSuccess(函数(){alert('AJAX请求成功完成');});$('.ajaxbtn').on('click',function(){event.preventDefault();var link=$(this.attr('href');var request=$.ajax({url:link,type:'GET',dataType:'html',success:function(data){alert('ajax请求成功完成');}}});});但同样的结果也发生了。我发现了问题,我不小心关闭了谷歌浏览器中的弹出窗口功能。谢谢,顺便说一句~我忘记添加了,请从元素中删除.ajaxSuccess()
调用