Участник+


Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: ![he][es в оф-лайне](images/offline.gif) |
Добрый день, у меня возник такой затык:
делаю так:
code:
выдает ошибку, в связи с чем вопрос, как мне выбрать элемент списка SELECT, по известному id, НО таких SELECTов на странице несколько!..
Я с помощью Ð_НÐ_ вытаскиваю из БД к примеру 5 строк, одно из значений в каждой строке это value этого селекта, но по value как известно выбрать (selected) элемент нельзя. (Только сейчас подумал, что id же должны быть на всей страницы и у всех элементов уникальные? Т.е. у элементов 2х SELECTов они не должны повторяться?..)
С помощью вот такой ф-ии я генерирую табличку с этим SELECом на каждой строке:
PHP:
function moreFields(id, structura_rashodov_id, structura_kks_id, quantity, unit_price, total_price, nds, nalog_stavka, total_price_nds) {
counter = Number(document.getElementById('goods_list').rows.length)-4;
counter++
var newFields = document.getElementById('readroot').cloneNode(true);
newFields.id = 'str_id'+counter;
if(document.all && !window.opera) {
if (/MSIE (5.5)|[6789]/.test(navigator.userAgent) && navigator.platform == \"Win32\") {
newFields.style.display = 'inline';
}
} else if (document.getElementById) {
newFields.style.display = 'table-row';
}
var insertHere = document.getElementById('writeroot');
insertHere.parentNode.insertBefore(newFields,insertHere);
var id_n = 0;
for( var i=0; i < document.getElementById('goods_list').rows.length; i++) {
if(document.getElementById('goods_list').rows[i].id != 'header' && document.getElementById('goods_list').rows[i].id != 'readroot' && document.getElementById('goods_list').rows[i].id != 'writeroot' ) {
document.getElementById('goods_list').rows[i].id = 'str_id'+id_n;
for( var k=0; k < document.getElementById('goods_list').rows[i].cells.length; k++ ) {
var theName = document.getElementById('goods_list').rows[1].cells[k].childNodes[0].name;
if (theName) {
document.getElementById('goods_list').rows[i].cells[k].childNodes[0].name = 'rashodi['+id_n+']['+theName+']';
}
if (document.getElementById('goods_list').rows[i].cells[k].childNodes[0].value == '' && document.getElementById('goods_list').rows[i-1].cells[k].childNodes[0].value != '' && document.getElementById('goods_list').rows[i-1].cells[k].childNodes[0].nodeName == 'INPUT' ) {
document.getElementById('goods_list').rows[i].cells[k].childNodes[0].value = document.getElementById('goods_list').rows[i-1].cells[k].childNodes[0].value;
}
else if ( document.getElementById('goods_list').rows[i-1].cells[k].childNodes[0].nodeName == 'SELECT' && document.getElementById('goods_list').rows[i-1].cells[k].childNodes[0].selectedIndex !=0 && document.getElementById('goods_list').rows[i].cells[k].childNodes[0].selectedIndex == 0 ) {
document.getElementById('goods_list').rows[i].cells[k].childNodes[0].selectedIndex = document.getElementById('goods_list').rows[i-1].cells[k].childNodes[0].selectedIndex;
}
}
id_n++;
}
}
}
воот... В каждой строчке есть сл. поля: structura_rashodov_id, structura_kks_id, quantity, unit_price, total_price, nds, nalog_stavka, total_price_nds (перв, 2 это SELECTы, который нужо выбрать в зависимости от поступившего на вход ф-ии значения - value)...
И я что то в затруднении, как это сделать...
Хотел сначала так: document.getElementById('goods_list').rows[i].cells[1].childNodes[0]. getElementById('structura_kks_id_'+structura_kks_i
d).selected = true;
Но сейчас понимаю, что так нельзя, id тут не уникальны... :/ А как быть ума не приложу...
__________________
Админ - вождь Апачей...
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|