-3

我对javascript很陌生,所以请随意。我正在尝试从文件中获取“未读通知”的数量,然后如果该数量高于 0,我希望它在 div 内显示图像。如果没有,那么我希望它保持空白。

这是我到目前为止所拥有的,现在它在 div 中显示通知的数量。我不希望它那样做。如果有超过 0 个未读通知,我只希望它显示一个图标。

这是我到目前为止所拥有的:

$(document).ready(function(){
   $("#notes_number").load("getnumber.php");

   var value = $("#notes_number").load("getnumber.php");

   if(value > 0){
    //display icon...not sure the javascript code for this.

    }

});
4

2 回答 2

0

load()不返回值,它会将响应加载到 DOM 元素中,您想$.get()改用:

$(document).ready(function(){
    $.get('getnumber.php',function(data){
        if(parseInt(data,10) > 0){
            //show icon
            $("#notes_number").html('icon here');
        }
    });
});
于 2013-09-19T19:12:38.073 回答
0

您可以通过多种方式显示图标。这完全取决于您的 HTML 结构。

假设你有一个标题栏和一个带类的 div,.messages你可以像这样更新它:

$("#header .messages").text(value + " new messages waiting.").addClass("new");

这将更新消息框中的文本并为其提供一个new类,该类可以具有与之关联的样式以将图标显示为背景图像,如下所示:

.messages.new {
    background-image: url(images/new_icon.jpg);
    background-repeat: no-repeat;
    background-position: left center;
}

但是,您首先需要更正您对 的错误使用load()。我建议get()在完成时使用回调函数,假设“getnumber.php”只返回一个字符串。

于 2013-09-19T19:13:06.320 回答