0
function loadTextboxes()
{
    var textareas = document.getElementsByTagName('textarea');

    for(var i=0; i < textareas.length; i++)
    {
        if (textareas.item(i).className == "richtextbox")
        {
            richtextbox(textareas.item(i));
        }
    }
}

//window.attachEvent('onload',loadTextboxes);

$(document).ready(function() {
    //loadTextboxes(); // works ...
    $('.richtextbox').each(richtextbox(this));
});

JavaScript 函数使用类“richtextbox”搜索 textarea 并调用另一个函数(未在此处发布)...尝试使用 jQuery 执行此操作 - 不起作用:-(

4

1 回答 1

3

问题是这一行:

$('.richtextbox').each(richtextbox(this));

意味着您调用richtextbox(this)并将其返回值传递给each(). 除非函数返回一个函数,否则这将不起作用。

我怀疑你的意思是:

$(function() {
  $("textarea.richtextbox").each(function() {
    richtextbox(this);
  });
});

这是将命名函数作为参数传递的正确方法。

理想情况下,this将由函数假定而不是作为参数传入,这将允许您将代码缩短为:

$(function() {
  $("textarea.richtextbox").each(richtextbox);
});
于 2010-03-04T08:27:36.033 回答