摘要: 如果下拉菜单没有做出选择,我正在尝试设置错误消息。
详细说明:
这是我的dd调用javascript函数:
<%:Html.DropDownListFor(r => Model.TypeId, TypeItems, new { @class="stretchInput", @onblur = "errorCheck"})%>
这是我的javascript:
<script type="text/javascript">
$(document).on("blur", "select[name=TypeId]",
function errorCheck() {
var errId = 'Type not chosen. Please choose from the menu.';
if (document.getElementById('TypeId').selectedIndex == 0) {
document.getElementById("DetailsError").visibility = 'visible';
document.getElementById("DetailsError").innerHTML = errId;
}
});
</script>
这是我想要更改值的标签:
<td><asp:Label ID="DetailsError" runat="server" CssClass="errorMsg" Text="testing" Visible="false"></asp:Label></td>
顺便说一下,我知道它是一个ASP控件。我尝试了HTML label
并得到了相同的结果。
我正试图用我的错误信息设置标签的文本。似乎我没有做任何事情影响标签。
我错过了什么?
答案 0 :(得分:1)
如果您只需使用标签显示来自JavaScript的错误消息,即控件没有服务器端相关性,您可以使用<span id="DetailsError">
。
或者
您可以在要使用<%=DetailsError.ClientID%>
的HTML / JS代码中的任何地方使用DetailsError
。
例如:
document.getElementById("<%=DetailsError.ClientID%>").innerHTML = errId;
请以此为出发点,而不是复制粘贴解决方案。