Javascript 在ajax success()函数中创建时,引导警报刷新并消失
我想在ajax返回时显示引导警报。但警报突然变红,然后很快就消失了。使用引导显示警报的正确方式是什么?谢谢Javascript 在ajax success()函数中创建时,引导警报刷新并消失,javascript,jquery,ajax,twitter-bootstrap,alert,Javascript,Jquery,Ajax,Twitter Bootstrap,Alert,我想在ajax返回时显示引导警报。但警报突然变红,然后很快就消失了。使用引导显示警报的正确方式是什么?谢谢 $('#btn')。单击(函数(){ var url=“添加”; var data=$('#add_form').serializeArray().reduce(函数(m,o){m[o.name]=o.value;返回m;},{}); $.ajax({ 键入:“POST”, url:url, 数据:JSON.stringify(数据), 数据类型:“json”, contentType:
$('#btn')。单击(函数(){
var url=“添加”;
var data=$('#add_form').serializeArray().reduce(函数(m,o){m[o.name]=o.value;返回m;},{});
$.ajax({
键入:“POST”,
url:url,
数据:JSON.stringify(数据),
数据类型:“json”,
contentType:'应用程序/json',
//async:false,
成功:功能(数据2){
如果(data2.res==1){
显示警报(“错误”、“警报危险”);
}否则{
showalert(“正常”、“警报成功”);
}
},
错误:函数(结果)
{
},
超时:5000
});
});
功能showalert(消息、警报类型){
$(“#警报占位符”)。追加(“×;”+消息+”;
setTimeout(函数(){
$(“#alertdiv”).remove();
}, 5000);
}
...
...
提交
我会做不同的事情,您可以直接将警报消息放在HTML中,然后玩show()
,hide()
,fadeIn()
或fadeOut()
:
请记住更改css文件并显示none alerts DIV:
#alertError,#alertSuccess{
display:none;
}
具有fadeIn属性 或者您可以使用“addClass”来设置引导div的动画 如果只需要动画警报框
function showalert(message, alerttype) {
$('#alert_placeholder').fadeIn('<div id="alertdiv" class="alert ' + alerttype + '" role="alert"><button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>' + message + '</div>');
setTimeout(function() {
$("#alertdiv").remove();
}, 5000);
}
函数showalert(消息,alerttype){
$(“#警报占位符”).fadeIn(“×;”+消息+”;
setTimeout(函数(){
$(“#alertdiv”).remove();
}, 5000);
}
我终于找到了问题所在。
我更改了按钮的(触发js代码)类型“submit”->“button”,一切正常
我还不知道为什么会这样
提交
提交
请考虑在您的应答器中格式化您的代码,我的问题不是动画引导程序。问题是DIV立即出现和消失。这个问题似乎与JS中的异步有关。可能是因为javascript多次触发。在点击事件javascript的末尾使用“returnfalse”。我更改了代码,但仍然不能像以前那样工作。看起来潜水舱冲洗得比以前快了,我无法指出它是否显示和关闭。但当调试显示它确实运行到这些代码中。
#alertError,#alertSuccess{
display:none;
}
function showalert(message, alerttype) {
$('#alert_placeholder').fadeIn('<div id="alertdiv" class="alert ' + alerttype + '" role="alert"><button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>' + message + '</div>');
setTimeout(function() {
$("#alertdiv").remove();
}, 5000);
}