Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.02.2013, 17:11
Интересующийся
Отправить личное сообщение для Lansaid Посмотреть профиль Найти все сообщения от Lansaid
 
Регистрация: 22.02.2013
Сообщений: 16

Обработать событие button и tr
Собственно вопрос в следующем есть кнопка внутри таблицы, на нее вешаю onclick,после обработки onclicka хочу,повешать onclick на данную строку таблицы(редактировать значение),НО происходит всплывание и при нажатии на кнопку в chrome и firefox обрабатывается клик по строке.чем лечится?код ниже
td2.innerHTML = '<input type="button" value="Сохранить"  name ="saveButti" onclick="checkResult(this)"> //ячейка таблицы с кнопкой и onclickом на ней

function checkResult(but1) {
    var childTD2 = but1.parentNode;
    var trParent=childTD2.parentNode;
    var childTD1 = trParent.firstChild;
    var childTD1Form = childTD1.firstChild;
    var number = childTD1Form.value;
  if (isNaN(number) ) {
  alert ('Вы ввели не число. Исправьте, пожалуйста!');
  childTD1Form.select();
} else if (number=="") {
   alert ('Вы не вввели число. Исправьте, пожалуйста!');
 childTD1Form.select();	
}
else {
 saveResult(childTD1,childTD2,childTD1Form,trParent,but1);
  } //обработчик клика по кнопке

function saveResult(childTD1, childTD2, childTD1Form, trParent,but1) {
    childTD1.innerHTML=childTD1Form.value;
    childTD2.innerHTML='<button>Удалить</button>';
    Сalculate( );
// but1.stopPropagation; //без этого все работает как надо в IE,Но Chrome,Firefox обрабатывают onclick сразу и по строке,получается значение ввели и тутже редактируем - непорядок
    trParent.setAttribute("onclick", "correctNumber(this)"); //тут вешаю onclick на строку таблицы
   
var childTD1, childTD2, childTD1Form= null;
}
Ответить с цитированием
  #2 (permalink)  
Старый 26.02.2013, 17:19
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Минимальный HTML приведите
Ответить с цитированием
  #3 (permalink)  
Старый 26.02.2013, 17:29
Интересующийся
Отправить личное сообщение для Lansaid Посмотреть профиль Найти все сообщения от Lansaid
 
Регистрация: 22.02.2013
Сообщений: 16

с минимальным html сложности,я приложил архив,там целый код
Вложения:
Тип файла: zip table.zip (2.0 Кб, 1 просмотров)
Ответить с цитированием
  #4 (permalink)  
Старый 26.02.2013, 17:33
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 30,148

Lansaid,

function checkResult(but1) {
а сюда отмену всплытия пробовали ставить?

04 var childTD2 = but1.parentNode;


05 var trParent=childTD2.parentNode;
Ответить с цитированием
  #5 (permalink)  
Старый 26.02.2013, 18:36
Интересующийся
Отправить личное сообщение для Lansaid Посмотреть профиль Найти все сообщения от Lansaid
 
Регистрация: 22.02.2013
Сообщений: 16

Пробовал,не помогает кнопка срабатывает и открывается обработчик на TRб может есть другой способ реализовать?
Ответить с цитированием
  #6 (permalink)  
Старый 26.02.2013, 18:42
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

А остановка всплытия не помогает?
http://javascript.ru/tutorial/events...ovka-vsplytiya
Ответить с цитированием
  #7 (permalink)  
Старый 26.02.2013, 20:13
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Lansaid
с минимальным html сложности,я приложил архив,там целый код
Для td и кнопки внутри
Ответить с цитированием
  #8 (permalink)  
Старый 26.02.2013, 20:27
Интересующийся
Отправить личное сообщение для Lansaid Посмотреть профиль Найти все сообщения от Lansaid
 
Регистрация: 22.02.2013
Сообщений: 16

помогает,но я хочу чтобы Onclick на строке работал,а так сделать не могу
Ответить с цитированием
  #9 (permalink)  
Старый 26.02.2013, 20:33
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Lansaid
помогает,но я хочу чтобы Onclick на строке работал,а так сделать не могу
Какие события фиксирует оnklick на tr ?
Ответить с цитированием
  #10 (permalink)  
Старый 26.02.2013, 20:39
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от Lansaid Посмотреть сообщение
помогает,но я хочу чтобы Onclick на строке работал,а так сделать не могу
если так написать то разве не будет как Вы хотели?
function checkResult(but1,event) {
event = event || window.event 
    if (event.stopPropagation) {
         event.stopPropagation()
    } else {
       event.cancelBubble = true
    };
....

а в onclick event переайте
onclick="checkResult(this,event)"
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите обработать событие realgleb Events/DOM/Window 3 27.01.2012 12:09
Как правильно подавить событие при подключении своего обработчика? Маэстро Firefox/Mozilla 2 03.09.2011 10:46
Проблема radio button с кроссбраузерностью shkarbatov Javascript под браузер 0 28.07.2011 09:55
Как правильно обработать событие? BAnder Events/DOM/Window 19 03.02.2009 13:09
Как обработать событие Cresh Events/DOM/Window 1 31.05.2008 05:17