なぜこれが私が働くのがとても難しいのか私は本当に理解していません:
最終的には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」は機能しますが、「メッセージ」の手法は使用しません。
「Test3」は機能し、「メッセージ」の手法を使用します。
このコードをインラインHTMLではなくJavaScriptで機能させる方法を知っている人はいますか?
jsFiddleリンク:http ://jsfiddle.net/jp2code/qCExy/10/