Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   передача параметра в функцию jQuery (https://javascript.ru/forum/misc/14570-peredacha-parametra-v-funkciyu-jquery.html)

Luter1984 21.01.2011 18:26

передача параметра в функцию jQuery
 
Добрый день!
Есть скрипт jQuery (в <head>.....</head>):
<script type='text/javascript'>
function A() {$('#idias').remove();}
</script>

И php-код:
do
{
printf("<tr id='idias'><td>%s</td><td>%s руб.</td><td>

<form method='post' action='' class='jc' name='my' id='MyFrm'>
<input type='hidden' name='my-item-id' value='%s' />
<input type='submit' name='my-add-button' value='Купить' />
<input type='button' value='Удалить' onClick='A();'/>
</form>

</td></tr>",
$myarray['title'],$myarray['cena'],$myarray['id']);
}
while($myarray = mysql_fetch_array($result));

При нажатии на любую из кнопок - "удалить", удаляется самая верхняя строка таблицы формируемой в цикле.
Как сделать, чтобы удалялся код из таблицы слева от кнопки...
Т.е. другими словами как передать значение $myarray['id'] в функцию A(), чтобы она могла распознавать, что именно нужно удалять или как сделать динамически изменяемым id=idias и передать его a функцию А().

Amphiluke 21.01.2011 21:15

Во-первых множество элементов с одинаковым id — это некорректно ни с точки зрения разметки, ни с точки зрения программирования.
Во-вторых, атрибуты id даром не нужны для удаления строки таблицы при клике не кнопку.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.4.min.js"></script>
<script type="text/javascript">
	$(document).ready(function() {
		$(".jc input[value='Удалить']").click(function() {
			$(this).closest("tr").remove();
		});
	});
</script>
</head>

<body>
	<table>
		<tr>
			<td>sf</td>
			<td>sf</td>
			<td>sf</td>
			<td><form action="#" class="jc"><input type="button" value="Удалить" /></form></td>
		</tr>
		<tr>
			<td>wet</td>
			<td>wer</td>
			<td>weewr</td>
			<td><form action="#" class="jc"><input type="button" value="Удалить" /></form></td>
		</tr>
		<tr>
			<td>tytj</td>
			<td>tytyt</td>
			<td>tyuyt</td>
			<td><form action="#" class="jc"><input type="button" value="Удалить" /></form></td>
		</tr>
		<tr>
			<td>qwwe</td>
			<td>qwwqe</td>
			<td>qweqwe</td>
			<td><form action="#" class="jc"><input type="button" value="Удалить" /></form></td>
		</tr>
	</table>
</body>
</html>

Luter1984 21.01.2011 22:12

Но данные у меня располагаются в цикле do...while и извлекаются из базы через printf()
Кроме того, в форме используется две кнопки одна добавляет товар (submit), другая должна удалять информацию о товаре, т.е. всю строку относительно этого товара, как это сделать мучаюсь уже несколько часов... А знаний моих в javascript явно нехватает


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