【问题标题】:Passing variable to jQuery .load function将变量传递给 jQuery .load 函数
【发布时间】:2011-09-08 16:10:42
【问题描述】:

我可以将变量(在本例中名为 test 的变量)传递给 jQuery .load 函数吗?

$(document).ready(function() {  
$('a').click(function(e) {
    e.preventDefault();
    var test= $(this).attr('href');
        $('.window').load($(test));     

});

这不起作用。

【问题讨论】:

  • 您提到您想在您的一个 cmets 中加载一个外部 URL。但是负载受到限制,例如“请求无法成功地从不同的域、子域或协议中检索数据。”

标签: jquery function variables load


【解决方案1】:

您将 url 包装在对 jQuery 的调用中。只需传递test,而不是$(test)。

$(document).ready(function() {  
    $('a').click(function(e) {
        e.preventDefault();
        var test= $(this).attr('href');
        $('.window').load(test);        
    });
});

此外,您的示例代码中缺少结束 });。不确定这是这里的错字还是您的实际代码中的错字。

【讨论】:

    【解决方案2】:

    在您的代码中,test 是一个字符串。 .load 应该接受那个字符串,而不是一个 jQuery 对象。

    $('.window').load(test);
    

    应该可以工作。

    【讨论】:

    • 不过,附带说明一下,使用“window”作为类名可能是个坏主意。即使它从不与 JavaScript 中的任何内容发生冲突,它也可能会误导阅读您的代码的新人。
    猜你喜欢
    • 2010-09-17
    • 1970-01-01
    • 2012-03-02
    • 2011-01-18
    • 2012-06-19
    • 2014-10-31
    • 1970-01-01
    • 2013-01-29
    • 1970-01-01
    相关资源
    最近更新 更多