Исчезает значение в input в Попапе
Здравствуйте! Опишу проблему.
Есть страница, на ней есть кнопка. При нажатии на эту кнопку открывается попап с готовыми input, так же на этой кнопке пытаюсь занести данные в эти input путём: var windowAdd = window.open("window_add_book.html","Ред",paramsPopup); windowAdd.document.getElementById('naimenovanie').value = 500; но значение появляются и сразу пропадают. Помогите, пожалуйста, не пойму в чем дело. |
KolaKola,
Попробуйте так: var windowAdd = window.open("window_add_book.html","Ред",paramsPopup); windowAdd.onload = function() { windowAdd.document.getElementById('naimenovanie').value = 500; }; |
Спасибо за ответ! Но теперь вообще не выводит :(
вот блок полностью $('.change-book').on('click',function () { var windowAdd = window.open("window_add_book.html","Ред",paramsPopup); window.onload = function(){ windowAdd.document.getElementById('naimenovanie').value = 500; }; }); |
KolaKola,
Сравните мой код и ваш |
Прошу прощения. Спасибо, большое! Получилось
|
Появился еще вопрос. Как мне из дочернего элемента, добраться до элемента который находится в таблице, которая в свою очередь находится в родительском элементе, вот, что пробовал:
window.parent.$('#book-table').find('tr').eq(numberTR).find('td').eq(0).find('h2').innerHTML window.opener.$('#book-table').find('tr').eq(numberTR).find('td').eq(0).find('h2').innerHTML $('#book-table',window.opener.document).find('tr').eq(numberTR).find('td').eq(0).find('h2').innerHTML |
Цитата:
$('el').parent().parent().children('table').children('.selector'); только селекторы свои укажите. |
Извините, но я не понял :(
|
j0hnik,
ему до родительского окна достучатся надо. KolaKola, нет в jquery innerHTML есть html() |
Спасибо! Подошло:
window.opener.$('#book-table').find('tr').eq(numberTR).find('td').eq(0).find('h2').html(); |
Еще вопросик появился. добавляю в существующую таблицу строку, путём:
window.opener.$('#book-table').prepend('<tr><td>' + '<img src ="' + masNewbook[3] + '" class="oblojka">'+ '<div class="opisanie">' + '<h2>'+ masNewbook[0] +'</h2>'+ '<p>'+ masNewbook[1] +'</p>' + '<h5>'+ masNewbook[2] + '</h5>'+ '</div>'+ '<div class="change-del-block">'+ '<button class="btn change-book">Редактировать</button>'+ '<button class="btn del-book">Удалить</button>' + '</div>' + '</td></tr>'); Строка с данными добавляется, но 2 недочета: 1. Стили для кнопок "Удалить" и "Редактировать" не до конца применяются(одна кнопка не находится выше другой). 2. При нажатии на кнопки не совершаются никакие действия(с уже заранее имеющимися строками в таблице работают корректно). Можно ли как нибудь это исправить? P.S.: При обновлении страницы на которой находится таблица, таблица возвращается в исходное состояние |
KolaKola,
надо смотреть скрипт который инициализирует таблицу и либо его запускать, если предусмотрено добавление, либо изменять изначально этот скрипт, чтоб он видел новые строки. |
А как это сделать? вот код кнопки редактировать:
$('.change-book').on('click',function () { numberTR = $(this).closest('tr').index(); var windowAdd = window.open("window_change_book.html","Ред",paramsPopup); masData = []; var nameBook = $('#book-table').find('tr').eq(numberTR).find('td').eq(0).find('h2').html(); var author = $('#book-table').find('tr').eq(numberTR).find('td').eq(0).find('p').html(); var year = $('#book-table').find('tr').eq(numberTR).find('td').eq(0).find('h5').html(); var srcImg = $('#book-table').find('tr').eq(numberTR).find('td').eq(0).find('img').attr('src'); masData.push(nameBook); masData.push(author); masData.push(year); masData.push(srcImg); windowAdd.onload = function () { windowAdd.document.getElementById('naimenovanie2').value = masData[0]; windowAdd.document.getElementById('avtor2').value = masData[1]; windowAdd.document.getElementById('year2').value = masData[2]; windowAdd.document.getElementById('IMAG2').value = masData[3]; windowAdd.document.getElementById('indexX').value = numberTR; }; }); а вот кнопки удалить: $('.del-book').on('click',function () { $(this).closest('tr').remove(); }); |
KolaKola,
изменить клики на $('#book-table').on('click', '.change-book', function () {}) $('#book-table').on('click', '.del-book', function () {}) |
Получилось, большооое спасибо!
|
Часовой пояс GMT +3, время: 11:29. |