是隐藏的字段子窗口无法从父母的窗口
-
11-07-2019 - |
题
我asp.net 形成包含的领域。在我访问这个窗口,我javascript职能可以访问该领域通过DOM与getElementById()方法和时我postpack的服务器,我收到更新。
然而,当我启动形式作为一个孩子窗口使用阶段的RadWindow控制,javascript不能问隐藏的领域对儿童的形式。而不是我得到的空。
我的问题是:
- 是隐藏的字段子窗口 不可访问的窗口时 发起父母asp.net 形成的?
- 有人试图这有阶段控制和遇到的问题?
编辑 Craig指出,《id可能是不同的。另外两个问题:
- 你可以确保id分配在服务器实际上是使用?
- 使用getElementByName()一个更好的机制访问DOM元素呢?
解决方案
得到你的ID asp.net 控制这样做:
<%= theControl.ClientID %>
getElementByName不是作为常用作getElementById.ID属性应该是唯一为每个页面上的元素,而该名称属性可以复制。
其他提示
它很可能元素的身份证不是什么你认为它是。检查呈现的网页,并看看如果ID是存在的。我猜这该网页是给一个不同的标识,因为它是呈现另一个控制。
如果是这种情况下,可以有形式呈现的一些脚本,返回元ID通过访问控制客户身份证。
大卫,我发给你这个答案,因为我看到了同样的问题,在我的代码,而唯一真正的解决办法,我发现是我不得不支持"击"功能在两个地方...在我的情况下,我是使用PetersDatePackage,但它是在一个阶段RAD条。
在我的情况下,控制是在一个.ascx页,并JS代码如下:
function OnIncidentDateChange(ctrl, dtDate, bErr)
{
var weekday = new Array(7);
weekday[0] = "Sunday";
weekday[1] = "Monday";
weekday[2] = "Tuesday";
weekday[3] = "Wednesday";
weekday[4] = "Thursday";
weekday[5] = "Friday";
weekday[6] = "Saturday";
<%=LabelDayOfWeek.ClientID %>.innerText = weekday[dtDate.getDay()];
}
但是,这本身是不够的。我不得不添加这段代码我的父页。页面拥有控制阶段的条。
// Dummy function?
function OnIncidentDateChange()
{
}
一旦我做的,它的工作...
我不确定为什么要告诉你真相,这是没有意义,并可能只是一个问题与PDP包...
我用getElementsByName对于选择框在同一集团。
作为对该控制的ID,TonyB有权的想法,但要确保你指的ClientID财产在预呈现的事件的处理程序,因为如果你这样做太早在页生命周期,它将不适用)。
它是可能的,javascript是试图得到一个参考隐藏的领域之前的RadWindow已经装好了?我相信我遇到这个之前,不得不使用目得到解决的问题。