- PR -

ASP.NETでTextBoxのフォーカスがある時のBackColor変更

1
投稿者投稿内容
神風
会議室デビュー日: 2003/08/28
投稿数: 19
投稿日時: 2003-09-03 10:49
ASP.NET/VB.NETでWEB開発を行っています。
TextBoxが複数存在し、フォーカスがあるTextBoxのBackColorを
設定する方法を教えて下さい。
どのTextBoxにもフォーカスがない場合は、全てのTextBoxのBackColorを白色、
フォーカスがTextBoxに移動されるとそのTextBoxのBackColorを
水色といった具合です。
理由は、どこにフォーカスがあるかを認識し易くするためです。
ぴで
大ベテラン
会議室デビュー日: 2002/10/10
投稿数: 123
お住まい・勤務地: 東京
投稿日時: 2003-09-03 11:45
DHTMLな話題ですが、こんな感じでできるかと思います。
コード:
<html>

<head>
<script language="javascript">
function f(p){
p.style.backgroundColor="aqua";
}
function b(p){
p.style.backgroundColor="white";
}
</script>
</head>
<body>
<input type="text" onfocus="f(this)" onblur="b(this)">
<input type="text" onfocus="f(this)" onblur="b(this)">
</body>
</html>



[ メッセージ編集済み 編集者: ぴで 編集日時 2003-09-03 11:47 ]
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-09-03 11:46
こんにちは。
引用:

神風さんの書き込み (2003-09-03 10:49) より:

TextBoxが複数存在し、フォーカスがあるTextBoxのBackColorを
設定する方法を教えて下さい。


 是非やりたい!と思い、調べてみました。CSS2としては、「focus」疑似要素で可能です。スタイルシートで、

input:focus
{
スタイル
}

と指定します。・・・が、InternetExplorerでは、「疑似要素はアンカーエレメント(A)以外に適用しても効果はない」とのこと。。。一応、Opera上では期待したとおりの動きをすることを確認しました。残念。

〜〜〜
なんか、同時だし。。。onblurか。それが探せなかった。とりあえず、IE以外ならこんな方法もあるということで。

<input runat="server" ...>
として、コードの方に手で
protected withevents input1 as system.web.???.input???
を付け加えると、asp.netのコントロールと同じように使用することができます。

[ メッセージ編集済み 編集者: Jitta 編集日時 2003-09-03 11:54 ]
神風
会議室デビュー日: 2003/08/28
投稿数: 19
投稿日時: 2003-09-03 13:18
ぴで さん、有難うございました。
この方法で思っていたとおりの動作が出来ました。

DHTMLかなとも思いましたが、VB.NET/ASP.NETでは
VBを知っていればASPに対する画面動作も簡単にコーディング
出来るのではと過度の期待をしていました。
JavaScriptやDHTMLなどもっと勉強する必要がありますね。
1

スキルアップ/キャリアアップ(JOB@IT)