0

问题陈述:

我有一个 DOM 结构,其中有两个表单对象存在于不同的父级下。表单对象共享相同的 ID。每个表单对象都有两个具有不同值的元素。

基页:

ParentA (id=ParentA) --> FormA (id=FormA) --> RadioOne (id=RadioOne) value=false, RadioTwo 不存在。

弹出:

ParentB (id=ParentB) --> FormA (id=FormA) --> RadioTwo (id=RadioTwo) value=true, RadioOne 不存在。

结构的原因是因为 ParentB 是一个弹出窗口,它在其中包含 ParentA 的基本页面上打开具有不同值的相同表单。弹出窗口是一个 JqueryColorBox,就在关闭弹出窗口之前,我想获取基本页面上元素的值(它们恰好具有相同的 ID)。

显示弹出窗口后,现在在我的 javascript 文件中,我正在尝试以下操作:

var radioOne = $("#RadioOne"); //这导致radioOne对象的值为false var radioTwo = $("#RadioTwo"); //这导致radioTwo对象的值为true

由于我有兴趣了解基本页面中元素的值,如果我尝试以下操作,这就是我期望它返回的内容:

var $parentForm = $("#FormA"); //不确定这里返回的是哪个FormA实例

var radioOne = $parentForm.find("#RadioOne); //这导致radioOne为假。 var radioTwo = $parentForm.find("#RadioTwo); //这导致radioTwo未定义。

问题:

基本上,我有兴趣了解基本页面中元素的值,而不是弹出窗口中的元素值。如果我不使用表单引用并使用 jquery 选择器,我会从基本页面中获得 RadioOne 值,而 RadioTwo 值是从弹出窗口中提供的。

在使用表单引用时,我可以从基本页面获取值,但我不确定这是否是正确的方法,因为如果正确返回表单引用,我并不肯定。Base Page FormA 和弹出 FormA 共享相同的 ID。

有没有更好的方法可以在不使用表单引用的情况下从基本页面获取元素值?

4

0 回答 0