0

对 JS 来说很新,我读过的关于对象的所有内容都没有解释如何将对象拉出来,例如,这里有一个简单的例子:

$('#ABtn').click({
    function(){
        runAlert({
            message: "hello world"
        });
    }
});

function runAlert(parameters){
    alert(parameters.message);
}

当它运行“runAlert()”时,如何将对象“消息”作为变量提取并使用它来显示“hello world”的警报?我已经用谷歌搜索并阅读了,但我似乎无法理解它。我做了一个小提琴,如果有人能告诉我怎么做,这样我就可以理解了,那就太棒了:http: //jsfiddle.net/WEZ9V/4/

4

5 回答 5

1

你有一个语法错误,你在应该使用括号的地方使用大括号。

   $('#ABtn').click( //use parens here
    function(){

        runAlert({
            message: "hello"
        });
    }
); // and here

function runAlert(parameters){
    alert(parameters.message);
}
于 2013-04-23T16:01:36.613 回答
1

首先,您指定单击功能的语法错误。它必须是形式

$('#ABtn').click(function(){
    your code
});    

这使您更容易看到您做错了什么。你需要的是

$('#ABtn').click(function(){
    runAlert({message:"hello"});
});
function runAlert(parameters){
    alert(parameters.message);
}

这是小提琴:http: //jsfiddle.net/uq8Vt/1/

于 2013-04-23T16:02:53.737 回答
1

你所做的很好,你只是有一个语法错误:

$('#ABtn').click(function(){
        runAlert({
            message: "hello world"
        });
    }
);

function runAlert(parameters){
    alert(parameters.message);
}

现场演示:http: //jsfiddle.net/rt3J2/

于 2013-04-23T16:00:12.773 回答
1

你有一个语法错误:

$('#ABtn').click({
    //           ^--------this { should not be there.
    function(){
        runAlert({
            message: "hello world"
        });
    });

function runAlert(parameters){
    alert(parameters.message);
}

一旦删除,它就可以正常工作:JS Fiddle demo

顺便说一句,如果您查看了浏览器的 JavaScript 或错误控制台(F12在大多数浏览器中),错误“未捕获的语法错误:意外令牌(”会引起您对这种情况的注意。尤其是在 JS Fiddle 中,单击JS Hint按钮将突出显示它认为错误所在的行(始终检查第一个错误之前的行)。

于 2013-04-23T16:00:46.790 回答
1

您的源代码中有错误(在对脚本进行故障排除时始终检查 JavaScript 控制台是否有错误click!)是一个函数,因此您应该使用括号,而不是花括号:

$('#ABtn').click(
    function(){
        runAlert({
            message: "hello world"
        });
    }
);
于 2013-04-23T16:01:17.080 回答