Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.01.2009, 19:36
Аватар для supchik
Новичок на форуме
Отправить личное сообщение для supchik Посмотреть профиль Найти все сообщения от supchik
 
Регистрация: 25.01.2009
Сообщений: 4

Явный вызов процедуры обработки события.
вызов процедуры обработки события можно осществить двумя способами:
1)явно - назначив ссылку на процедуру обработки события в соответствующем свойстве объекта.
2)неявно

Есть код:
<html>
  <head>
  <title></title>
  </head>
<body>
<form name="form1">
<input type=button name=button1 value=Следующий size=16>
<input type=button name=button2 value=Предыдущий size=16 onClick="if (text2.value=='Я - гений'){text2.value='Я - умница'} 
else {if (text2.value=='Я - умница'){text2.value='Я - молодец'}
 else {text2.value='Я - гений'}}"><br>
<select name="select1" onChange="izmen()">
        <option name=option1 value="Я - гений" selected>Я - гений</option>
        <option name=option2 value="Я - молодец">Я - молодец</option>
        <option name=option3 value="Я - умница">Я - умница</option>
        <option name=option4 value="Я - лопух">Я - лопух</option></select><br>
Кто я?<input type=text size=15 maxlength=15 name=text2 ReadOnly>
</form>

<script>
function next(){
if (document.form1.text2.value=='Я - гений'){document.form1.text2.value='Я - молодец'}
else {if (document.form1.text2.value=='Я - молодец'){document.form1.text2.value='Я - умница'}
else {document.form1.text2.value='Я - гений'}}
}

document.form1.button1.click=(next)

document.form1.text2.value=document.form1.select1.options[0].value
</script>
</body>
</html>


Для кнопки button2 вызов процедуры события осуществляется неявно и работает. Для кнопки button1 вызываю явно и что-то не получается. Подскажите,в чем я ошибся?
Ответить с цитированием
  #2 (permalink)  
Старый 25.01.2009, 20:37
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Сообщение от supchik Посмотреть сообщение
document.form1.button1.click=(next)
Это что такое вообще?

document.getElementsByName('form1')[0].getElementsByName('button1')[0].onclick = next;

Последний раз редактировалось Octane, 25.01.2009 в 21:40.
Ответить с цитированием
  #3 (permalink)  
Старый 25.01.2009, 21:06
Аватар для supchik
Новичок на форуме
Отправить личное сообщение для supchik Посмотреть профиль Найти все сообщения от supchik
 
Регистрация: 25.01.2009
Сообщений: 4

document.form1.button1.click=(next)

пытался так вызвать функцию next

documnet.getElementsByName('form1')[0].getElementsByName('button1')[0].onclick = next;

редактор пишет "Объект не поддерживает это свойство или метод"
Ответить с цитированием
  #4 (permalink)  
Старый 25.01.2009, 21:41
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

потому что опечатка в слове document
Ответить с цитированием
  #5 (permalink)  
Старый 25.01.2009, 22:22
Аватар для supchik
Новичок на форуме
Отправить личное сообщение для supchik Посмотреть профиль Найти все сообщения от supchik
 
Регистрация: 25.01.2009
Сообщений: 4

я исправлял,не помогает
Ответить с цитированием
  #6 (permalink)  
Старый 26.01.2009, 06:38
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Octane, не вижу причин не пользоваться dom level 0. Нигде не видел таких советов(здесь и здесь, например). Кроме того, стандарт HTML частично описывает DOM level 0 (события)

supchik, просмотри этот раздел, там ответ на твой вопрос
Ответить с цитированием
  #7 (permalink)  
Старый 26.01.2009, 08:51
Аватар для supchik
Новичок на форуме
Отправить личное сообщение для supchik Посмотреть профиль Найти все сообщения от supchik
 
Регистрация: 25.01.2009
Сообщений: 4

Всем спасибо,нашел:

<BUTTON type="button" name="mybutton" value="10">
<SCRIPT type="text/javascript">
function my_onclick() {
. . .
}
document.form.mybutton.onclick = my_onclick
</SCRIPT>
</BUTTON>

Последний раз редактировалось supchik, 26.01.2009 в 08:58.
Ответить с цитированием
  #8 (permalink)  
Старый 26.01.2009, 08:56
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Цитата:
Ребят,у меня с техническим английским туго
так ты не читай, ты посмотри, какие атрибуты есть у тега input ;-)
Ответить с цитированием
  #9 (permalink)  
Старый 26.01.2009, 15:22
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

x-yuri, где там DOM? Это MSDOM был наверное, по стандартам было бы document.forms[0], a не document.form1.
Ответить с цитированием
  #10 (permalink)  
Старый 26.01.2009, 21:42
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Цитата:
x-yuri, где там DOM? Это MSDOM был наверное, по стандартам было бы document.forms[0], a не document.form1
про HTML - я имел в виду назначение обработчиков событий
по поводу document.forms не думал, что оно в DOM описано
по поводу MSDOM - скорее Netscape DOM, потому что MS сначала повторила реализацию Netscape
а по поводу стоит ли писать document.form1, даже не знаю, может и не стоит
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос про вызов события onClick skyfish Общие вопросы Javascript 12 27.12.2008 19:12