Autor Zpráva
imploder
Profil
<script language="JavaScript" type="text/javascript">
function addscrow(n) {
var s = document.getElementById('sc_select'+n); s.onchange = "";
var nrow = document.getElementById('sc_row'+(n+1)); nrow.style.display = 'block';
var ns = document.getElementById('sc_select'+(n+1)); ns.onchange = 'addscrow('+(n+1)+')';
}
</script>

V Opeře funguje bez problémů, ale ve FF i IE se zřejmě neprovede poslední řádek.
Manq
Profil
imploder
Ve FF myslím existuje Konzola JS.
Nástroje > Konzola JavaScriptu. Vypíše ti, co je špatně.
imploder
Profil
Nic mi nevypsala. Ani v IE to neukazuje žádnou chybu. Jen to prostě provede první dva řádky a ten třetí ne nebo nějak chybně.

Je to na stránce http://bprhad.wz.cz/awkwords/

Má to při změně v selectu na posledním řádku odkrýt další řádek a nastavit mu jakožto novému poslednímu zobrazenému řádku tutéž funkci pro přidání dalšího. Tak by to mělo jít až dokud nebudou všechny řádky odkryté. V Opeře to funguje. Ve FF i IE to sice přidá další řádek, ale jeho změna (vybrání písmena) už nic nepřidá.
los
Profil *
Nesprávne je to, že sa nastavuje obsluhe udalosti reťazec namiesto obslužnej funkcie. Z toho, že to funguje v Opere, si nič nerob - Opera bola vždy trochu iná. Namiesto ns.onchange = 'addscrow(' + (n + 1) + ')' by tam malo byť niečo ako ns.onchange = function() { addscrow(n + 1); }. Prípadne môžeš použiť addEventListener/attachEvent a removeEventListener/detachEvent.
peta
Profil
ns.onchange = 'addscrow('+(n+1)+')';
ns.onchange = 'aaa';
alert(ns.onchange)
vypise aaa
Podle mne to funguje naprosto spravne, priradil jsi tam string. Vytvareni nove funkce je function nebo new Function. prirazeni funkce nejake se pise ns.onchange=funkce;

ns.onchange = 'aaa';
Javascriptova konzola pochopitelne nic nenapise, protoze je zapis spravny, lze to tak napsat.

function funkce(evt)
{alert('aaa');}
ns.onchange=funkce;
alert(ns.onchange)
napise function funkce(evt) {alert('aaa');}
ns.onchange();
napise 'aaa'
imploder
Profil
Myslel jsem, že při nastavování atributů jde jen o to jaký kde bude řetězec - jako bych to psal přímo do kódu.

Vložil jsem tam funkci místo řetězce jak jste mi poradili a funguje to jak má. Díky za pomoc.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0