Javascript 标签为';s文本

Javascript 标签为';s文本,javascript,asp.net,Javascript,Asp.net,可能是一个又快又傻的问题,但如何将标签文本传递到javascript确认或警报函数中呢 以下是我所做的,但并不好: <asp:Label ID="lblGVDeleteMessage" runat="server" Text="Show me!" style="display:none;" ></asp:Label> <asp:ImageButton ID="btnDelete" runat="server" AlternateText="Delete"

可能是一个又快又傻的问题,但如何将标签文本传递到javascript确认或警报函数中呢

以下是我所做的,但并不好:

<asp:Label ID="lblGVDeleteMessage" runat="server" Text="Show me!" style="display:none;" ></asp:Label>
<asp:ImageButton ID="btnDelete" runat="server" AlternateText="Delete" 
    CommandName="Delete" Height="15px" ImageUrl="~/Images/document_delete.png" 
    OnClientClick="return confirm('#<%=lblGVDeleteMessage.ClientID%>')" 
    Width="15px" />


谢谢

您需要通过元素的ID获取元素,然后读取它的
innerHTML
属性:

OnClientClick="return confirm(document.getElementById('<%=lblGVDeleteMessage.ClientID%>').innerHTML)"
ASPX:

OnClientClick=“return showConfirm(“”)”

您需要通过元素的ID获取该元素,然后读取它的
innerHTML
属性:

OnClientClick="return confirm(document.getElementById('<%=lblGVDeleteMessage.ClientID%>').innerHTML)"
ASPX:

OnClientClick=“return showConfirm(“”)”

您可能希望这样:

"return confirm(document.getElementById('#<%=lblGVDeleteMessage.ClientID%>').innerHTML)" 
“返回确认(document.getElementById('#').innerHTML)”

根据下面的注释以及您必须首先动态地将文本设置为标签的事实,您是否可以不将文本动态地设置为调用?比输出总是隐藏的额外dom元素更简洁,例如:

"return confirm('<%# SomeFunctionTosetTheText() %>')" 
“返回确认(“”)”

您可能希望这样:

"return confirm(document.getElementById('#<%=lblGVDeleteMessage.ClientID%>').innerHTML)" 
“返回确认(document.getElementById('#').innerHTML)”

根据下面的注释以及您必须首先动态地将文本设置为标签的事实,您是否可以不将文本动态地设置为调用?比输出总是隐藏的额外dom元素更简洁,例如:

"return confirm('<%# SomeFunctionTosetTheText() %>')" 
“返回确认(“”)”

我使其工作的唯一方法是在标签上设置clientmode=“Static”,在OnClientClick事件上这样做:“return showConfirm('lblGVDeleteMessage');”

我使其工作的唯一方法是在标签上设置clientmode=“Static”,在OnClientClick事件上这样做:“return showConfirm('lblGVDeleteMessage');”

使用return confirm(document.getElementById('#').innerHtml)“使用return confirm(document.getElementById('#').innerHtml)”您应该使用
textContent
innerText
作为回退-
innerText
是专有的,尽管它不起作用。I get:JavaScript运行时错误:无法获取innerText和InnerHTML属性的未定义或空引用的属性“innerText”。也许我应该补充一点,按钮和标签位于gridview的列中,因此ClientID在呈现的HTML中会有所不同。我按照@RGraham的建议创建了一个函数,但ID是以字符串形式传递的,如下所示:“您应该使用
textContent
innerText
作为回退-
innerText
是专有的,但它不起作用。I get:JavaScript运行时错误:无法获取innerText和InnerHTML属性的未定义或空引用的属性“innerText”。也许我应该补充一点,按钮和标签位于gridview的列中,因此ClientID在呈现的HTML中会有所不同。我按照下面的@RGraham建议创建了一个函数,但ID是以字符串形式传递的,如下所示:“谢谢你们的快速回复,但我收到了以下错误:JavaScript运行时错误:无法获取innerText和InnerHTML属性的未定义或空引用的属性‘innerText’。也许我应该补充一点,按钮和标签在gridview的列中,因此ClientID在呈现的HTML中会有所不同。我按照上面的建议做了,但是当我调试JS函数时,id是这样传递的:“因此元素为null。正如我所说,按钮和标签都在gridview的列中,我也在使用母版页。请尝试
而不是使用任何东西:(即使页面上的其他控件不在gridview中,我也尝试过,但我似乎仍然无法通过JS访问它们。。好的,我对此不满意,但唯一可行的方法是在标签上设置clientMode=“Static”,并在OnClientClick事件上执行此操作“return showConfirm('lblGVDeleteMessage')感谢你们两位的快速回复,但我收到了以下错误:JavaScript运行时错误:无法获取innerText和InnerHTML属性的未定义或空引用的属性“innerText”。也许我应该补充一点,按钮和标签位于gridview的列中,因此ClientID在呈现的HTML中会有所不同。我按照您在上面建议过,但当我调试JS函数时,id是这样传递的:“因此元素为null。正如我所说,按钮和标签都在gridview的列中,我也在使用母版页。请尝试
而不是一切正常:(即使页面上的其他控件不在gridview中,我也尝试过,但我似乎仍然无法通过JS访问它们。。好的,我对此不满意,但唯一可行的方法是在标签上设置clientMode=“Static”,并在OnClientClick事件上执行此操作“return showConfirm('lblGVDeleteMessage')