Jak JavaScript / JQuery vlastně chápe String?

Jakým způsobem vlastně zachází JavaScript (JQuery) se Stringem?

Mám klasickou HTML tabulku, na každou buňku (td) mám pověšený handler, který se mi stará o to, že když na tu buňku kliknu, tak můžu dynamicky měnit její hodnotu (in-place editor). Další funkcionalita, kterou jsem chtěl, byla aby se po zmáčknutí enteru zavolala událost click na buňce, ktera je pod tou která událost vyvolává. Prostě – uživatel vyplní hodnotu ve sloupečku, zmáčkne enter, tabulka se mu přepočítá a jemu se označí buňka hned pod tím. Jako v excelu.

Tak a teď jádro pudla: podle mě by následující konstrukce měly být ekvivalentní. Ale nejsou. (05-05-2009: Nakonec asi opravdu jsou:) )

  1. var nextId = "#" + document.getElementById(parameter).className;
    $(nextId).click();
  2. var nextId = new String("#" + document.getElementById(parameter).className);
    $(nextId).click();
  3. var nextId = document.getElementById(parameter).className;
    $("#" + nextId).click();

Ty první dvě možnosti nefungují, třetí ano.

(aktualizováno 12-04-2009, upraveno do použitelné podoby)

(aktualizováno 05-05-2009, ono to nějak začalo fungovat, naprosto nechápu)