gpt4 book ai didi

javascript - 将变量从 FancyBox 传递到父级时未捕获类型错误

转载 作者:行者123 更新时间:2023-11-28 00:35:42 25 4
gpt4 key购买 nike

当我从 FancyBox 传递变量值时遇到问题。首先,我将告诉代码:

这是 FancyBox 中的代码:

JavaScript

function post_value(no){
parent.setSelectedUser(document.forms[no]["NO_INDUK"].value);
parent.$.fancybox.close();
}

html

while($baris = mysqli_fetch_assoc($hasil))
{
//1 item($baris);
$no++;
?>
<tr>
<form name="<?php echo $no ?>" method='post'>
<td><?php echo $no ?></td>
<td><input id="NO_INDUK" class="form-control" type="text" name="NO_INDUK" size="5" value="<?php echo $baris["NO_INDUK"] ?>" readonly/></td>
<td><?php echo $baris["NAMA_SISWA"] ?></td>
<td><?php echo $baris["NAMA_WALI"] ?></td>
<td><?php echo $baris["ALAMAT"] ?></td>
<td>
<a class="btn btn-success" href="#" onclick='post_value(<?php echo $no ?>)'> Pilih</a>
</td>
</form>
</tr>

<?php
} //untuk while
?>

这是源页面 View :

html 源代码 View

<tr>
<form name="2" method='post'>
<td>2</td>
<td><input id="NO_INDUK" class="form-control" type="text" name="NO_INDUK" size="5" value="112312" readonly/></td>
<td>Angga Lisdiyanto</td>
<td>asa</td>
<td>asdsad</td>
<td>
<a class="btn btn-success" href="#" onclick='post_value(2)'> Pilih</a>
</td>
</form>
</tr>

<tr>
<form name="3" method='post'>
<td>3</td>
<td><input id="NO_INDUK" class="form-control" type="text" name="NO_INDUK" size="5" value="2543" readonly/></td>
<td>Fina Arzika Humaidah</td>
<td>Nur Kojim</td>
<td>Campurejo, Panceng, Gresik</td>
<td>
<a class="btn btn-success" href="#" onclick='post_value(3)'> Pilih</a>
</td>
</form>
</tr>

然后,当我单击“Pilih”按钮时,FancyBox 将不会关闭,并且值不会传递。如果 JavaScript 代码像这样,它可以成功传递一个值:

function post_value(no){
parent.setSelectedUser(no); //just test, passing from no value
parent.$.fancybox.close();
}

用Chrome调试后,这行有错误:

parent.setSelectedUser(document.forms[no]["NO_INDUK"].value);

错误消息是:

未捕获类型错误:无法读取未定义的属性“NO_INDUK”

也就是说,我希望有任何回复,如果有人可以帮助我,我会很高兴。谢谢:)

最佳答案

解决了(我的眼睛变黑了!)。

正如@JFK所说,onclick='post_value(n)'正在传递表单索引而不是表单名称。所以我尝试在表单名称中添加几个字符,如下所示:

<form name="form<?php echo $no ?>" method='post' action="">

然后在按钮中就像这样:

onclick='post_value("form<?php echo $no ?>")'

在 JavaScript 上:

function post_value(NamaForm){
parent.setSelectedUser(document.forms[NamaForm]["NO_INDUK"].value);
parent.$.fancybox.close();
}

就是这样。

抱歉,印尼语可能会让您感到困惑。 :)

关于javascript - 将变量从 FancyBox 传递到父级时未捕获类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28529858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com