Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   от новичка: событие onclick - запись данных в input \ div \ cookie (https://javascript.ru/forum/events/41512-ot-novichka-sobytie-onclick-zapis-dannykh-v-input-%5C-div-%5C-cookie.html)

wmag 17.09.2013 11:18

от новичка: событие onclick - запись данных в input \ div \ cookie
 
на страничке есть некоторое количество кнопок, на кнопки повешены события onclick:
<input type="button" value="buy" onclick="add(1,rudragsh,800)">

function add (item,name,price) {

value = "id: " + item + " price: "+ price + " \ "
orderhtml = name + " price: "+ price + "<br>"

orderlist.value += value 
orderdiv.innerHTML += orderhtml


при нажатии на кнопку, выдает: "Uncaught ReferenceError: rudragsh is not defined " и ссылается на строчку в HTML, а не на скрипт... JS не может передать текстовое значение???

но ведь "rudragsh" - значение передающиеся через onclick....

если писать: <input type="button" value="buy" onclick="add(1,800)"> - и не использовать name в скрипте - то все работает...

wmag 17.09.2013 13:06

обновил топик

unl0k 17.09.2013 13:18

Если ты передаешь текствое значение, то передавай его текстом...
onclick="add(1,'rudragsh',800)">
Интерпритатор не на столько силен, чтобы читать твои мысли)

wmag 17.09.2013 16:03

ах вот какая закарючка... спасибо

wmag 17.09.2013 16:28

А как объявить глобальную переменную?

Я так делаю:

function on_body_load() {

 window = {value:"", orderhtml:"", total:""} //Объявляем глобальную переменную
 
}

function add (item,name,price) {

total += price
value = "id: " + item + " price: "+ price + " | "
ohtml += name + " price: "+ price + "<br>"


orderlist.value += value 
orderdiv.innerHTML = ohtml + total
}


И повесил <body onload="on_body_load()">

ругается, что "total" неопределена и стопорится на строчке: total += price

bes 17.09.2013 19:16

почему не в разделе Работа?
http://javascript.ru/forum/job/41463...ov-platno.html

wmag 17.09.2013 19:43

Цитата:

Сообщение от bes (Сообщение 272615)
почему не в разделе Работа?
http://javascript.ru/forum/job/41463...ov-platno.html

наверное потому что ту тему вы создали, а я про нее ничего и не знал...

буду туда постить вопросы

bes 17.09.2013 20:28

Цитата:

Сообщение от wmag
наверное потому что ту тему вы создали, а я про нее ничего и не знал...

платить по той же логике собираешься: "тему не я создавал, следовательно, и платить не мне"? :D

unl0k 17.09.2013 21:15

Ну правильно говорит тебе, ты же ее в объект window записал...
Плохому я тут тебя учил))
deleted
Если хочешь записать в window, то не пытайся перезаписать саму переменную, как подсказали - этого сделать не получится, просто допиши в поле window.tratata = 4to-to.
Но не стоит вообще использовать глобальные переменне, будь то window или произвольная переменная. В твоем случае можной обойтись и без нее.

Учебник javascript.ru шикарен, почему бы не прочесть хоть азы?! Половина вопросов отпадет сразу!

bes 17.09.2013 21:27

Цитата:

Сообщение от unl0k
Ну правильно говорит тебе, ты же ее в объект window записал...
window.total += price
А вообще ты АД творишь!)
Не перезаписывай window!!!

удаляй быстрей, window readonly ;)


Часовой пояс GMT +3, время: 14:05.