| Autor | Zpráva | ||
|---|---|---|---|
| rypar Profil |
#1 · Zasláno: 3. 3. 2011, 21:09:22 · Upravil/a: rypar
Ahoj,
mam input, do ktereho po kliknuti nacitam hodnotu, kterou je slovo oddelene carkou a mezerou. Tato hodnota je promennou. Funguje to na tento kod: document.getElementById("nazvykomp").value += naz ';avsak kdyz chci z tohoto inputu odmazat po opetovnem kliknuti tento vyraz ulozeny v promenne, tak jiz tento kod (***) nefunguje: document.getElementById("nazvykomp").value -= naz ';celkove tato funkce vypada takto: function check(chbx,img,nazvy) {
imgs=Array("img/kup.png","img/nekup.png");
if (document.getElementById(chbx).checked == true) { //kdyz je checkbox zaskrtly
document.getElementById(chbx).checked = false; //odskrtne ho
document.getElementById(img).src=imgs[0]; //vymeni obrazek
totalPrice -= parseInt(document.getElementsByName(chbx)[0].value); //odecte cenu
document.getElementById("totalprix").value = totalPrice;
document.getElementById("nazvykomp").value -= nazvy + ", " '; //***ma odecist z inputu promennou nazvy (dopredu nevime, kde se v retezci nachazi, vime jen jeji hodnotu - tou je slovo, nikoli cislo
}
else { //kdyz neni checkbox zaskrtly
document.getElementById(chbx).checked = true; //zaskrtne ho
document.getElementById(img).src=imgs[1]; //vymeni obrazek
totalPrice += parseInt(document.getElementsByName(chbx)[0].value); //pricte cenu
document.getElementById("totalprix").value = totalPrice;
document.getElementById("nazvykomp").value += nazvy + ", " '; //pripise do inputu dalsi zaznam
}
} diky za radu! P.S: po provedeni -= mi to hodi misto retezce bez odectene hodnoty NaN |
||
| Chamurappi Profil |
#2 · Zasláno: 3. 3. 2011, 21:45:27
Reaguji na rypara:
V kódech, které uvádíš, jsou špatně uvozovky, přebývá apostrof. Nevím o žádném programovacím jazyku, který by podporoval odčítání řetězců. Chceš-li z řetězce odmazat posledních pár znaků, nedávno jsme si tu připomněli metodu slice.
|
||
| rypar Profil |
#3 · Zasláno: 3. 3. 2011, 21:50:15
no problem je v tom, ze ne vzdy to jsou posledni znaky, tedy muze se jednat o retezec jako treba "jabko, hruska, banan, svestka", ze ktereho potrebuju vymazat "hruska," - jedinne co vim je udaj "hruska," ulozeny v promenne VAR - tedy potrebuju neco jako "STRING -= VAR"
S JS jsem zacatecnik, hledal jsem na W3schools mezi vsemi string funkcemi, ale neprisla mi pro to vhodna zadna |
||
| Chamurappi Profil |
#4 · Zasláno: 3. 3. 2011, 21:53:01 · Upravil/a: Chamurappi
Reaguji na rypara:
To tě bude zajímat nejspíš metoda replace:
var novýŘetězec = původníŘetězec.replace(coVymazat, ""); „hledal jsem na W3schools“ To není moc spolehlivý zdroj informací. |
||
| rypar Profil |
#5 · Zasláno: 3. 3. 2011, 22:07:54
Tak jeste do tretice. Kod uz by nemel obsahovat syntakticne chyby, NaN se nezobrazuje, ale z retezce to neodcita. Kde probuh porad delam chybu? :(
function check(chbx,img,nazvy) {
imgs=Array("img/kup.png","img/nekup.png");
if (document.getElementById(chbx).checked == true) {
document.getElementById(chbx).checked = false;
document.getElementById(img).src=imgs[0];
totalPrice -= parseInt(document.getElementsByName(chbx)[0].value);
document.getElementById("totalprix").value = totalPrice;
var stary = novy.replace(nazvy+', ', "");
var stary = novy;
}
else {
document.getElementById(chbx).checked = true;
document.getElementById(img).src=imgs[1];
totalPrice += parseInt(document.getElementsByName(chbx)[0].value);
document.getElementById("totalprix").value = totalPrice;
var novy = document.getElementById("nazvykomp").value += nazvy + ', ';
}
}
"To není moc spolehlivý zdroj informací." Na jaky zdroj se tedy mohu spolehnout vice? |
||
|
Časová prodleva: 15 let
|
|||
0