asp.netのhtmlサーバコントロールの基本
asp.netの基本・aspとの違いで紹介したコードはaspxファイルに(htmlレイアウトのファイル)に、まだstrName
やdetail
など、サーバ処理の変数が残っています。
htmlサーバコントロールを使えば、サーバ処理でhtml
の要素(コントロール)にアクセスできるようになります。
フォームアプリでデザイナ上にテキストボックスなどのコントロールを配置し、コードでそのコントロールのプロパティなどを書き換えたりするのと同じイメージです。
サーバ処理でアクセスするためには、サーバ処理でアクセスしたい要素にrunat="server"
属性と一意となるIDを指定する必要があります。
そうすればサーバ処理で出力されるhtml要素の属性やスタイルを書き換えることができるようになります。
下記のようなイメージです。
sample.aspx(htmlレイアウト)
<input type="text" id="txtName" value="テスト1" runat="server">
sample.aspx.vb(サーバ処理)
txtName.value = "テスト2" 'テキストボックスの値を変更する
txtName.style.add("background-color", "blue") 'テキストボックスの背景色を変更する
レスポンスされるhtml
<input type="text" id="txtName" value="テスト2" style="background-color:blue;" runat="server">
htmlサーバコントロールはhtmlレイアウトに記載した要素の属性やスタイルを変更することができます。
また、テキストボックスなどのコントロールだけでなくdiv
やspan
などにもrunat="server"
属性をつければ、サーバ側で属性やスタイルを変更することができます。