Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   списки в динамических таблицах (https://javascript.ru/forum/dom-window/71684-spiski-v-dinamicheskikh-tablicakh.html)

maksqwerty 05.12.2017 15:55

function deleteRow(el)
{
    var del = el.parentNode.parentNode.rowIndex;
    table.deleteRow(del);
    while (table.rows[0]){
        updateRow(table.rows[del], del, false);
        del++;
    }

}

function insRow()
{
    var new_row = updateRow(clone.cloneNode(true), ++tbody.rows.length, true);
    tbody.appendChild(new_row);
}

 function updateRow(row, del)
 {
    row.cells[0].innerHTML = del;


    var inp1 = row.cells[1].getElementsByTagName('input')[0];
    inp1.id = 'inp1ut'+ del;
 

    var inp2 = row.cells[2].getElementsByTagName('input')[0];
    inp2.id = 'inp2ut'+ del;
  

   var sel1 = row.cells[3].getElementsByTagName('select')[0];
    sel1.id ='fertig'+ del;
 
    var sel2 =row.cells[4].getElementsByTagName('select')[0];
    sel2.id ='kost'+ del;

    var but1 = row.cells[5].getElementsByTagName('button')[0];
    but1.id = 'deletebutton'+del;

    return row;
}

Вот

рони 05.12.2017 15:59

maksqwerty,
в конец строки 15

$('select.fertig:first').trigger('change')

maksqwerty 05.12.2017 16:06

А это разве ничего, что у меня таблица на обычном js написана, а тут jquery
inb4: всё-равно не работает:(

рони 05.12.2017 16:10

maksqwerty,
может нет класса fertig?

рони 05.12.2017 16:13

maksqwerty,
может ошибки в консоли есть ?

maksqwerty 05.12.2017 16:21

Есть такой класс
в консоли ошибок нет.
через дебаггер смотрю, тоже нормально всё
скрипт будто игнорирует эту строку

Nexus 05.12.2017 16:34

Может так?
$('select[id*="fertig"]:first').trigger('change');

Или так:
$('select.fertig:first').change(function(){
    alert('asd');
}).trigger('change');

maksqwerty 05.12.2017 16:39

ну оно же id перебирает.
а класс у меня таким и остался, каким я написал в html.
этот список сейчас выглядит вот так:
<select id="fertig1" name="fertig[]" class="fertig" onchange="моя функция ajax()" >
               <?php
	include('position/fertig.php');	
		?>
</select>

рони 05.12.2017 17:03

maksqwerty,
строка 33
sel1.value = document.getElementById('fertig1').value;

maksqwerty 05.12.2017 17:22

Цитата:

Может так?
$('select[id*="fertig"]:first').trigger('change');
не работает. Ошибки unexpected token

Цитата:

строка 33
sel1.value = document.getElementById('fertig1').value;
а вот это работает, спасибо :dance:
Но только вот есть ещё другая проблема.
Элементы этих списков зависят от другого списка.
Если я в том другом списку выберу, к примеру, tetst1,
то в этом списке будут видны, к примеру 5 элементов,
а если выберу, test2, то будут видны другие элементы.
Я это делал через display:none -> display:block
$(document).ready(function(){
	$("#eart").change(function(){
		var val = $("#eart").val();
		 if (val == "1"){
			
			$(".000").css("display", "block");
			$(".310").css("display", "none");
			$(".311").css("display", "block");
			$(".312").css("display", "block");
			$(".313").css("display", "none");
			$(".314").css("display", "block");
			$(".318").css("display", "none");
			$(".319").css("display", "block");
				}else if (val == "2"){
		
			$(".000").css("display", "none");
			$(".310").css("display", "block");
			$(".311").css("display", "block");
			$(".312").css("display", "none");
			$(".313").css("display", "block");
			$(".314").css("display", "none");
			$(".318").css("display", "block");
			$(".319").css("display", "none");
		}
	
	});
});

Эти классы, которые я скрываю/показываю - классы вариантов списка fertig
<option id="" class="000">test</option>

К примеру.

С первым элементом всё нормально показывает.
А у других, динамически созданных, элементов есть все варианты (т.е везде стоит блок)
Что с этим можно сделать?


Часовой пояс GMT +3, время: 08:15.