Передача this.value из разметки входного HTML-кода javascript insertCell

0

У меня есть функция javascript, которая создает таблицу и вставляет ячейку с insertCell(0);

Внутри ячейки находится вход в форму html, который вызывает другую функцию onKeyUp, через которую я передаю 4 параметра. Последним параметром является значение ввода this.value. Это значение всегда передается как неопределенное. Есть ли способ получить это значение, когда пользователь обновляет количество?

Я не могу использовать селектор идентификаторов, поскольку tr создается каждый раз, когда элемент добавляется в корзину.

Я отправляю всю функцию, но это проблема.

Это не работает...

cell1.innerHTML="<input type='text' onKeyUp='updateQty("+posItem.id+",\""+posItem.color+"\",\""+posItem.size+"\","+this.value+")' name='qty' value='"+posItem.qty+"' class='textfield'/>";

вот вся функция

function addToPosCart(posItem) {

    posCart.push(posItem);

    var table=document.getElementById("cart_table");

    var tr = table.insertRow(-1);

    tr.className = 'row';
    tr.setAttribute('row_id',posItem.id);
    tr.setAttribute('color',posItem.color);

    var totalPrice = posItem.price * posItem.qty;

    var cell1=tr.insertCell(0);
    var cell2=tr.insertCell(1);
    var cell3=tr.insertCell(2);
    var cell4=tr.insertCell(3);
    var cell5=tr.insertCell(4);
    var cell6=tr.insertCell(5);
    var cell7=tr.insertCell(6);

    cell1.innerHTML="<input type='text' onKeyUp='updateQty("+posItem.id+",\""+posItem.color+"\",\""+posItem.size+"\","+this.value+")' name='qty' value='"+posItem.qty+"' style='width:30px' class='textfield input_qty'/>";
    cell2.innerHTML="<span style='font-size:16px;font-weight:bold;'>"+posItem.name+"</span><br>"+posItem.color +" "+posItem.size;
    cell3.innerHTML="$"+posItem.price.toFixed(2);
    cell4.innerHTML="<input type='text' name='dis_dollars' value='"+posItem.disDollars+"' style='width:30px' class='textfield'/>";
    cell5.innerHTML="<input type='text' name='dis_percent' value='"+posItem.disPercent+"' style='width:30px' class='textfield'/>";
    cell6.innerHTML="$"+totalPrice.toFixed(2);
    cell7.innerHTML="<a onclick='deleteItem(this.rowid)' style='height:22px;width:23px;padding:1px 0 0 0px;'class='button_black'>&#10060;</a>";

    updateTotals();

}
Теги:

1 ответ

0
Лучший ответ

должен быть

cell1.innerHTML = "<input type='text' onKeyUp='updateQty(" + posItem.id + ",\"" + posItem.color + "\",\"" + posItem.size + "\",this.value)' name='qty' value='" + posItem.qty + "' style='width:30px' class='textfield input_qty'/>";

Демо: скрипка

  • 0
    Ух ты, я мог бы поклясться, что попробовал это, так же как и любое другое комбо, которое я мог придумать Работает отлично, спасибо, воткнул на это часами !!!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню