2011-01-11 103 views
1

如何在不使用警报框的情况下显示jquery错误信息?我只需要在屏幕上以红色显示一行错误消息。jquery错误信息

+0

您可以将消息放在div中并将其放在任何需要的位置。 CSS和DOM使它成为可能。 – 2011-01-11 01:08:52

回答

2

只是要,做它的功能...

function error(msg) { 

    var msgBox = $('#msg-box'); 

    if (msgBox.length === 0) { 
     msgBox = $('<div />', { 'id': 'msg-box'}).hide().prependTo('body'); 
    } 

    msgBox.html(msg).fadeIn(500); 

} 

然后添加一些CSS

#msg-box { 
    background: red; 
    padding: 1em; 
} 

See it on jsFiddle

+0

我会给你+1,如果只是小提琴,但甚至建议替换原生`alert`功能?呃...... – 2011-01-11 01:14:13

+0

@Felix Kling对不起,它听起来像是OP想要的(我没有留下*不推荐*警告)。我删除了那部分,并希望仍然得到那个+1 :) – alex 2011-01-11 01:31:17

0

尝试使用jQuery UI的dialog component(还有,see here)。或者,您可以创建一个pdiv元素,使其与其余内容保持一致,并将其中的消息放入该消息中,并提供一个按钮来摆脱它(或者可以在几秒钟后自动将其隐藏)。

0

把你想要的错误显示出来。

<div id='errorDiv'></div> 

并把你的错误信息放在里面。

0

事情是这样的:

$("<p>error message</p>").css("color", "red").appendTo($("body")); 

你也可以把一个空的节点(格)的HTML,比如ID为 “ERROR_MSG”,然后用此来添加信息到它:

$("#error_msg").html("error message"); 
1

例如

function jAlert(text) { 
    var jAl = $('#jAlert'); 
    jAl = jAl.length ? jAl : $('<div>',{'id':'jAlert'}).css({ 
     'padding': '10px', 
     'border': '1px solid black', 
     'position': 'absolute', 
     'color': 'red' 
    }).click(function() { 
     $(this).hide(); 
    }).appendTo('body').hide(); 


    jAl.html(text).show(); 
} 

fiddle

如果您只想显示调试信息,您可以在Chrome或Firebug中使用console.log()