jQuery函数返回undefined

时间:2013-12-20 13:53:50

标签: jquery json function

我想写一个简单的函数,它会在发送表单后显示警告,但我做错了。这是我的代码:

$(function() {

    var alert_container  = $('<div class="alert"></div>');
    var alert = {
        "success": "Success",
        "error":  "Error"
    };

    function show_message(msg) {

        alert_container
            .addClass(msg)
            .append('<p>'+alert.msg+'</p>');

        alert_container.insertBefore($("form")).hide().fadeIn(300);

    }

    $('form').on('submit', function(e) {
        e.preventDefault();
        show_message('success');
    });

});

此代码在警告框内返回未定义,但如果我检查 console.log(alert.success)返回正确的值“Success”。我在这里缺少什么?

1 个答案:

答案 0 :(得分:5)

.append('<p>'+alert.msg+'</p>');
此处

alert.msg不存在,因为它会尝试解析。msg,而不是数组属性。

尝试:.append('<p>'+alert[msg]+'</p>');