架空の映画のネタバレレビュー

現在.NET C#で開発しています。
cs側でSQL文を発行して取得したデータをaspx側で使用したいのですが、連携の仕方がわかりません。
具体的には、
----------------------------------------------------------------
*コンボボックス1,2,3使用
(1)SQL文実行(cs側)
(2)SQL文で取得したデータをjavascript(aspx側)で使用するために値引渡し
(3)コンボボックスにバインド(コンボボックス1のみ)
(4)コンボボックス1で選択した値により、コンボボックス2の内容をjavascriptで動的に変更
----------------------------------------------------------------
といったことがやりたいのです。
ちなみにコンボボックスの内容を変更する際にpostbackしたくないので、fristload時にコンボボックス1,2,3に表示する予定のデータを一度に全て取得したいと考えています。

コンボボックスの内容を動的に変更するにはデータが入った変数が必要だと考えているのですが、javascriptで宣言した変数にどうやってcs側からデータを格納すればいいのか、といったことがわかりません。

初歩的な質問で申し訳ないのですが、
ご助言お願いします。

A 回答 (1件)

Visual Studio2003と2005では大きく処理が違うので明記すること。



とりあえず、どちらでも動くと思うが...たぶん。
問題は、ポストバックしたときにSelect2の値が選択した値が取得できない...。

...aspx側
<input type=hidden id=option1 runat=server>
<input type=hidden id=option2 runat=server>
<input type=hidden id=option3 runat=server>
<script language=javascript>
function fncChgSelect(strValue){
 var aa = '';
 if(strValue == '1')
  aa = document.getElementByID('option1').value;
 else if(strValue == '2')
  aa = document.getElementByID('option2').value;
 else
  aa = document.getElementByID('option3').value;
 var ddl = document.getElementByID('Select2');
 while(ddl.options.length != 0)
  ddl.remove(0);
 var bb = aa.split(';');
 for(i=0;i<bb.length;i++){
  if(bb[i]='') continue;
  ddl.add(new Option(bb[i]));
 }
}
</script>

<select id=Select1 onchange="fncChgSelect(this.value);" runat=server>
 <option value=1>1</option>
 <option value=2>2</option>
 <option value=3>3</option>
</select>
<select id=Select2 runat=server></select>


...C#側
private void Form_Load(){
      :
 option1.value = ここにDBから取得した値を';'で連結する!
 option2.value = ここにDBから取得した値を';'で連結する!
 option3.value = ここにDBから取得した値を';'で連結する!
      :
}
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報