我真的不明白为什么这对我来说很难开始工作:
它最终会进入一个 ASP.NET 控件,所以我相信我需要将 Javascript 传递给<textarea>
控件的 ID。
它不起作用。
因此,在 jsFiddle 中,我尝试对名字和姓氏使用标准控件,但它们也不起作用。
编辑:
我一直在玩 jsFiddle,看来我jsOnFocus
的从未被调用(警报永远不会触发)。但是,我能够从其他人那里运行一个小脚本,使多行文本框清晰并重置 - 我似乎无法找到从 javascript 函数调用它的方法:
function jsOnFocus(obj) {
alert("Inside the jsOnFocus.");
if (obj.Value==obj.defaultValue)
obj.Value="";
}
function jsOnBlur(obj) {
if (obj.Value==="")
obj.Value=obj.defaultValue;
}
这里是 HTML。
<table>
<tr><td>Message:</td><td> </td></tr>
<tr>
<td> </td>
<td>
<textarea name="txtMsg" rows="6" cols="30"
onfocus="if(this.value==this.defaultValue)this.value='';"
onblur="if(this.value==='')this.value=this.defaultValue;">[Write your message here or call my voice number at (555) 222-1234.]</textarea>
</td>
</tr>
<tr>
<td>Test1:</td>
<td><input type="text" name="txtTest1"
onfocus="jsOnFocus(txtTest1)"
onblur="jsOnBlur(txtTest1)" value="Test1" /></td>
</tr>
<tr>
<td>Test2:</td>
<td><input type="text" name="txtTest2"
onfocus="if(this.value=='Test2'){this.value=''};" value="Test2" /></td>
</tr>
<tr>
<td>Test3:</td>
<td><input type="text" name="txtTest3"
onfocus="if(this.value==this.defaultValue)this.value='';"
onblur="if(this.value==='')this.value=this.defaultValue;" value="Test3" /></td>
</tr>
</table>
“消息”有效,但我想让代码在我可以放置在我的“js”文件中并在其他对象上使用的 javascript 中运行。
“Test1”是尝试调用 javascript,但它不起作用。
“Test2”有效,但它没有使用“Message”中的技术。
“Test3”有效,它确实使用了“Message”中的技术。
有谁知道如何使这段代码在 javascript 而不是内联 html 中工作?
jsFiddle 链接:http: //jsfiddle.net/jp2code/qCExy/10/