javascript新手。我在PHP中有一个while循环,看起来像这个
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);
}