Новое в JavaScript. У меня есть цикл в PHP, который выглядит следующим образом
while ($row_voucher=mysql_fetch_row($risultato_query_voucher)) { //INFO poche righe sotto, date_format da solo non funziona
echo "<tr>\n
<td id=" . $row_voucher[3] ."><input type='checkbox' value='" . $row_voucher[3] . "' onchange='ControllaCodice(this)' id='" . $row_voucher[6] . "'></td>\n
<td>" . $row_voucher[2] . "</td>\n
<td>" . $row_voucher[3] . "</td>\n
<td>" . date_format( new DateTime($row_voucher[4]), 'd/m/Y' ). "</td>\n
<td>" . date_format( new DateTime($row_voucher[5]), 'd/m/Y' ). "</td>\n
<td>" . $row_voucher[6] . "</td>\n
</tr>\n";
}
Что мне нужно сделать, это когда вы нажимаете на флажок, чтобы взять значение первого типа ввода и добавить его. Поскольку это цикл while, он сгенерирует таблицу с множеством флажков, каждый из которых имеет свое значение. Так что если вы, например, отметили 3 флажка, написанный мной javascript должен взять 3 значения и добавить их, а затем распечатать.
Если возможно, мне нужно также добавить значение при проверке и вычесть его при снятии отметки.
Вот неработающий код JavaScript:
<script type='text/javascript'>
function ControllaCodice(this.value){
window.alert(this.value);
}
</script>";
Заранее спасибо.
Вы не проходите this.value
, но this
к функции, которая принимает один атрибут. Имя переменной не имеет значения, только содержание делает. Хотя вы не можете принять this
в функции это зарезервированная переменная.
Также не обязательно использовать window.alert
, может быть сделано только с alert
,
Итак, код:
... onchange = "ControllaCodice(this)" ...
function ControllaCodice(c){
alert(c.value);
}
this.value
не является допустимым именем параметра, и использование владельца функции в качестве параметра является плохой идеей. Вместо этого, пусть это будет нормальный параметр.
function ControllaCodice(input) {
alert(input.value);
}