powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Java Script При создании компонента, не работает событие ONCLICK
21 сообщений из 21, страница 1 из 1
Java Script При создании компонента, не работает событие ONCLICK
    #35434323
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята, выручайте!
Вообщем следующая проблемка.
Мне нужно динамически добавлять строку в таблицу. Это у меня получается..
Но в этой строке, в одном из столбцов есть кнопочка "Продублировать", по нажатию на которую должна добавляться еще одна строка...
Вообщем, думаю будет понятней, если я выложу код:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
//В существующую таблицу добавляем строку
                var newRow=document.getElementById('test').insertRow( 0 ); 
//Создаеам новые столбцы
		var newCell = newRow.insertCell( 0 ); 
		newCell.align="center";
		newCell.innerHTML="<input type='text'>"; 
		var newCell2 = newRow.insertCell( 1 ); 
		newCell2.innerHTML=text; 

//Вот здесь проблемка.. Событие onclick в submit не отрабатывает.. 
		var newCell3 = newRow.insertCell( 2 ); 
		newCell3.innerHTML='<input type="submit" value="Продублировать" onclick="javascript:return NewTextBox('+text+'); ">'; 
	       document.getElementById('test').appendChild(newRow);
		
		
		return false;


Есть какиеөто идейки?
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35434456
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делать онклик у субмита - только время терять...
Лучше использовать конструкцию

Код: plaintext
1.
2.
<form onsubmit='return NewTextBox()'>
...
<input type="submit" value="Продублировать" />
Или использовать обычную кнопку с онкликом...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435102
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да не, какие проблемы?
Просто в innerHTML вставляется скрипт, но в текстовом виде - с какой стати он будет работать просто так? - Дудки!
Надо либо его "выполнять" с помощью eval(), либо, что является в данном случае лучшим вариантом, - вставлять элемент посредством DOM: создать инпут, назначить все нужные параметры, задать ему обработчик onclick и вставить в родителя. Работать будет гарантийно и гарантийно везде.
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435352
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dillok
Код: plaintext
1.
2.
3.
       var newRow=document.getElementById('test').insertRow( 0 ); 
       ...
       document.getElementById('test').appendChild(newRow);

что еще за манипуляции? insertRow и так вставляет строку в таблицу, зачем дублировать это appendChild'ом? insertRow(0) вставляет строку в начало таблицы, appendChild переносит ее же самую в конец таблицы. Все это эквивалентно операции insertRow(-1) - добавление строки в конец таблицы.
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435499
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IDVsbruckДа не, какие проблемы?
Просто в innerHTML вставляется скрипт, но в текстовом виде - с какой стати он будет работать просто так? - Дудки!
Надо либо его "выполнять" с помощью eval(), либо, что является в данном случае лучшим вариантом, - вставлять элемент посредством DOM: создать инпут, назначить все нужные параметры, задать ему обработчик onclick и вставить в родителя. Работать будет гарантийно и гарантийно везде.

IDVsbruck, ты имеешь в виду так:

var newElem=document.createElement("input");
newElem.type="button";
newElem.value="Продублировать";
newElem.onclick="javascript:return NewTextBox('+text+'); "

Все равно не работает.. может я что-то не так пишу??
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435634
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dillok
IDVsbruck, ты имеешь в виду так:

var newElem=document.createElement("input");
newElem.type="button";
newElem.value="Продублировать";
newElem.onclick="javascript:return NewTextBox('+text+'); "

Все равно не работает.. может я что-то не так пишу??
Он имел в виду, что как в последней строчке писать нельзя.
Напиши, например newElem.onclick=MyFunc;
И далее опиши эту функцию. Для неё даже параметр не нужен. У тебя уже есть значение в newCell2.innerHTML.
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435640
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DilloknewElem.onclick="javascript:return NewTextBox('+text+'); "

Все равно не работает.. может я что-то не так пишу??

ага. Опять в onclick строку суваете, а не функцию. В общем случае это будет выглядеть примерно так:
Код: plaintext
newElem.onclick=function(txt){return function(){alert(txt);}}(text);
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435647
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSerge
Напиши, например newElem.onclick=MyFunc;
И далее опиши эту функцию. Для неё даже параметр не нужен. У тебя уже есть значение в newCell2.innerHTML.
как-то некузяво из innerHTML поднимать... а если там вдруг откуда ни возмись еще какие-нить теги появятся? Но тоже вариант конечно.
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435653
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
illion
Код: plaintext
newElem.onclick=function(txt){return function(){alert(txt);}}(text);

Ну да этот код кошернее.
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435661
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
newElem.onclick=function(txt){return function(){alert(txt);}}(text);

Что-то очень непонятно.. Не могли бы Вы разъяснить касательно моего примера..
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435678
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DillokЧто-то очень непонятно.. Не могли бы Вы разъяснить касательно моего примера..
Код: plaintext
newElem.onclick=function(txt){return function(){  NewTextBox(txt);  }; }(text);
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435689
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ладно, спрошу по другому...

Код: plaintext
newElem.onclick=function(txt){return function(){alert(txt);}}(text);

что такое TXT и что такое TEXT ??
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435697
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
return забыла. return NewTextBox(txt); (если конечно NewTextBox возвращает true или false)
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435707
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
illion, так что такое txt и text?? и куда теперь вставлять return NewTextBox(txt);

Объясни дураку популярно пожалуйста ))
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435724
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
newElem.onclick=function(txt){return function(){  return NewTextBox(txt);   }}(text);

есть функция function(txt){return function(){ return NewTextBox(txt); }}, которая при вызове возвращает функцию function(){ return NewTextBox(txt); }. Здесь txt - просто имя переменной. Затем эта функция вызывается с параметром text: function(txt){return function(){alert(txt);}} (text) ;, и переменной txt присваивается значение text на тот момент времени, когда было совершено присваивание.
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435734
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ясно.. Странно, но при нажатии на кнопку "дублировать", которая создалась динамически, ничего не происходит... в чем может быть еще трабла??
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435798
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть.. Заработало.. Спасибо, ребята.. Выручили! Ура!!! )))
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435935
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А еще, ребята, как сделать чтобы при нажатии на кнопку она исчезала???
Т.е. при нажатии на кнопку "Дублировать", нужно чтобы она исчезла и с помощью джава скрипта уже создается новая кнопка..
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35435945
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
onclick="this.style.display='none';"
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35436122
Фотография illion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DillokА еще, ребята, как сделать чтобы при нажатии на кнопку она исчезала???

а исчезала - насовсем, или с возможностью восстановления? Если насовсем, то лучше
Код: plaintext
onclick = "this.parentNode.removeChild(this)"
а если не на совсем, то через display (см. предыдущий пост).
...
Рейтинг: 0 / 0
Java Script При создании компонента, не работает событие ONCLICK
    #35436225
Dillok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, друзья :) Работает!
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Java Script При создании компонента, не работает событие ONCLICK
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]