我有一个多行asp.textbox输入控件。
我不知道我的问题是否与ASP.NET,Multiline控件或其他问题有关,但是onblur和onfocus无法正常工作。
<script type="text/javascript">
var defaultMsg = 'Write your message here or or call my voice at (xxx) xxx-xxxx.';
var controlMsg = doc.createElement("input");
controlMsg.id = "txtMessage";
controlMsg.type = "text";
controlMsg.value = defaultMsg;
controlMsg.onfocus=function jpFocus() { if (this.value == defaultMsg) this.value = ''; }
controlMsg.onblur=function jpBlur() { if (this.value == '') this.value = defaultMsg; }
</script>
然后....
<asp:TextBox ID="txtMessage" Columns="30" Rows="6" runat="Server" TextMode="MultiLine" />
没有人看到为什么这不起作用的原因吗?
最佳答案
实际上,您正在创建html元素,并向其附加了一个事件。
此外,ASP.NET控件不使用服务器端ID。
这是您应该做的:
var controlMsg = document.getElementById('<%= txtMessage.ClientID %>');
controlMsg.onfocus = // Some Code ...
controlMsg.onblur = // Some Code ...
关于javascript - 用于TextMode =“MultiLine”的Onblur,Onfocus javascript无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11731831/