[英]Javascript Unable to GetElementById in ASP.NET C#
我知道这是一个非常普遍的问题。 我试图获得一个“输入密钥”事件,通过javascript调用页面上某个按钮的点击。 但是,我不能为我的生活从我的asp.net页面中通过其id或名称获取单个元素。
我的理解是,这个问题与javascript所在的位置有关,是否在javascript加载时或者那些性质的东西中呈现了元素?
每次我尝试使用var x = document.getElementById('btn_AddAdmin')
我都会得到一个空值。
我的asp.net页面包含它继承的SiteMaster页面。 我已经包含了我的asp.net页面和SiteMaster页面的精简版本。
ASP.NET页面:
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master"
AutoEventWireup="true" CodeBehind="Admin.aspx.cs" Inherits="HERMES.Admin" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<input type="text" id="txt_AddAdmin" runat="server" onkeypress="Populate()" />
母版页:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs"
Inherits="HERMES.SiteMaster" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head runat="server">
<title></title>
<link href="./Styles/Site.css" rel="stylesheet" type="text/css" />
<asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form runat="server">
</form>
</body>
对不起格式化,我似乎做错了什么......
我试图将javascript放在许多不同的位置 - 从站点主页页面到我的asp.net页面的顶部和底部。 无论如何都没有运气。
var x = document.getElementById('<%= btn_AddAdmin.ClientID %>');
如果您的按钮是Server Control
它会在input
按钮之前添加一个命名方案,以便在postback
期间将其绑定回相应的服务器控件。 因此需要使用ClientID
属性来检索“呈现的id”。
要了解更多,请访问:
谷歌与Bing:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.