[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблема с одинаковыми ID.
Pyroman
Здравствуйте. У меня есть скрипт магазина и в нём следующий код:
    <?PHP print '<center>
<table class="table ipb_table" border="0" cellpadding="2" cellspacing="3">
<tr align="center" bordercolor="red">
<td class="table ipb_table" width="100"><font color = "#0A6E0B"><strong>Товар</strong></font></td>
<td class="table ipb_table" width="50"><font color = "#0A6E0B"><strong>ID</strong></font></td>
<td class="table ipb_table" width="100"><font color = "#0A6E0B"><strong>Название</strong></font></td>
<td class="table ipb_table" width="100"><font color = "#0A6E0B"><strong>Цена</strong></font></td>
<td class="table ipb_table" width="100"><font color = "#0A6E0B"><strong>Количество</strong></font></td>
<td class="table ipb_table" width="100"><font color = "#0A6E0B"><strong>Купить</strong></font></td>
</tr>'
;
while($shop = mysql_fetch_assoc($result2)) {
print '<tr align="center">
<td><strong><img src="'
.$picdir.$shop["item_id"].'.png'.'"></strong></td>
<td><strong>'
. $shop["item_id"] . '</strong></td>
<td><strong>'
. $shop["name"] . '</strong></td>
<td><strong>'
. $shop["price"] . ' руб.</strong></td>
<td><strong>'
. $shop["stack"] . ' шт.</strong></td>
<td><strong>
<form action="'
.$faction.'" method="post">
Введите количество:
<p><INPUT SIZE="1" MAXLENGTH="3" TYPE="TEXT" ID="count" NAME="count" VALUE="1"></p>
<INPUT TYPE="HIDDEN" NAME="nazvanie" ID="nazvanie" VALUE ="'
. $shop["name"] . '">
<INPUT TYPE="HIDDEN" NAME="icount" ID="icount" VALUE ="'
. $shop["stack"] . '">
<INPUT TYPE="HIDDEN" NAME="iprice" ID="iprice" VALUE ="'
. $shop["price"] . '">
<INPUT TYPE="HIDDEN" NAME="username10" ID="username10" VALUE ="'
.$username.'">
<p><button class="ipsButton" type="button" id="buy3" value="'
. $shop["item_id"] . '" onClick="buy1();">Купить</button></p>';
if($username == 1 || $username == 2){
print '<p><button class="ipsButton" value="' . $shop["item_id"] . '" name="del" type="submit">Удалить</button></p><br>';
print '<p>Новая цена:   <INPUT TYPE="text" NAME="price_new" SIZE="5" MAXLENGTH="5"><INPUT TYPE="HIDDEN" NAME="edit_id" value="' . $shop["item_id"] . '"></p><br>
<p><INPUT class="ipsButton" TYPE="submit" name="submit_edit" VALUE="Изменить"></p>'
;
}
print '</form></strong></td>
</tr>'
;
}
print "</table></center>"; ?>


Функция buy1():

    <script type="text/javascript" src="/jquery.js"></script>
<
script type="text/javascript">
function buy1() {

var username10 = $('#username10').val();
var nazvanie = $('#nazvanie').val();
var icount = $('#icount').val();
var iprice = $('#iprice').val();
var count = $('#count').val();
var buy4 = $('#buy3').val();

$.ajax({
type: "POST",
data: "username10="+username10+"&nazvanie="+nazvanie+"&icount="+icount+"&iprice="+iprice+"&count="+count+"&buy0="+buy4,
url: 'engine/modules/shop/pokupka.php',
success: function(data) {
alert(data);
}
}
);
}

</script>


Проблема в том, что берутся одинаковые ID, хотя товаров много, и следовательно данные берутся только от первого товара. В jquery и ajax я слабоват и не знаю, как решить проблему. Спасибо.



Спустя 20 минут, 37 секунд (22.05.2012 - 00:55) inpost написал(а):
тебе ответили, кажется, в соседней теме.
Для каждого товара должен быть уникальный ID.

Спустя 15 минут, 33 секунды (22.05.2012 - 01:11) Pyroman написал(а):
Да, но как это сделать, если значения берутся из базы данных и автоматом назначается для каждой новой строки одинаковый ID?

Спустя 5 часов, 57 минут, 3 секунды (22.05.2012 - 07:08) Michael написал(а):
Вместо ID="iprice" пиши class="iprice"

При клике в $(this) будет нажатая кнопка(var buy4 = $(this).val()).
В var iprice = $(this).closest('form').find('.iprice').val() одно из твоих данных

Спустя 9 часов, 16 минут, 19 секунд (22.05.2012 - 16:24) Pyroman написал(а):
Выдаёт ошибку:
g.nodeName is undefined @ http://mysite.ru/engine/classes/js/jquery.js:2


UPD: Разобрался, спасибо за помощь!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.