1

如果我将 ClientID 作为参数传递给 javascript 函数而不包括其周围的单引号,它将作为对控件本身的引用传递,然后可以在不首先调用 getElementByID 的情况下使用它。

我在任何地方都找不到这种行为,这是浏览器特定的东西还是 .net 的东西还是什么?

我正在代码隐藏中设置这样的调用......

protected void Page_Load(object sender, EventArgs e)
        {
            Button1.Attributes.Add("onClick", string.Format("showvalue({0})",  TextBox1.ClientID));
        }

我担心这可能不适用于旧版本的 IE。谢谢。

4

2 回答 2

4

生成 JS 代码时在 ID 值周围添加引号,例如:string.Format("showvalue( ' {0} ' )", TextBox1.ClientID)

如果没有引号,showValue 会使用您的 ClientID 名称获取全局变量的实例,该名称通常是您的控件呈现的 DOM 元素。

于 2008-12-05T11:49:02.583 回答
0

如果你用单引号传递它并使用 getElementByID 它应该在所有浏览器中都可以工作,这是“正常”的方式。

我不确定为什么这种方法像你说的那样有效。它也适用于 Firefox 吗?

于 2008-12-05T11:45:46.163 回答