我asp.net 形成包含的领域。在我访问这个窗口,我javascript职能可以访问该领域通过DOM与getElementById()方法和时我postpack的服务器,我收到更新。

然而,当我启动形式作为一个孩子窗口使用阶段的RadWindow控制,javascript不能问隐藏的领域对儿童的形式。而不是我得到的空。

我的问题是:

  1. 是隐藏的字段子窗口 不可访问的窗口时 发起父母asp.net 形成的?
  2. 有人试图这有阶段控制和遇到的问题?

编辑 Craig指出,《id可能是不同的。另外两个问题:

  1. 你可以确保id分配在服务器实际上是使用?
  2. 使用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已经装好了?我相信我遇到这个之前,不得不使用目得到解决的问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top