よろしくお願いいたします。
現在、データバインド機能を使用して検索画面を作っております。
javascriptは初心者なので手探りで作っておりますが、
イメージとしましては
(1)複数項目をドロップダウンメニューで選択しアンド条件で絞込みます。
(2)その結果をテーブルとして表示したいのです。
(3)テーブルは最初から表示されていなくて、テーブルヘッダーの部分だけを表示させておきたい。
(4)オールクリアのボタンをクリックするとまたもとの状態のテーブルヘッダーだけを表示する。
といった感じです。
初心者なのでまったくわかりません。
ソースは以下になります。
ご教授よろしくお願いいたします。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=Shift_JIS">
<TITLE>データバインドル</TITLE>
<script language="javascript">
<!--
function ShowTable()
{
//selectにて選択された値を取得します。
var nIndex;
nIndex = document.frmSample.selNumber.value;
//データにフィルタをかけます。
objDataBind.FilterValue=nIndex;
objDataBind.FilterColumn="num";
objDataBind.FilterCriterion="=";
objDataBind.Reset();
}
//-->
</script>
</HEAD>
<BODY>
<FORM name="frmSample">
<SELECT NAME="selNumber">
<OPTION SELECTED VALUE="1">1
<OPTION VALUE="2">2
<OPTION VALUE="3">3
<OPTION VALUE="4">4
</SELECT>
<INPUT TYPE="button" value="データを表示" onClick="ShowTable()">
<SELECT NAME="seltitle">
<OPTION VALUE="うさぎ">うさぎ
<OPTION VALUE="かめ">かめ
<OPTION VALUE="ねこ">ねこ
<OPTION VALUE="いぬ">いぬ
</SELECT>
<INPUT TYPE="button" value="データを表示" onClick="ShowTable()">
</FORM>
<OBJECT classid="clsid:333c7bc4-460f-11d0-bc04-0080c7055a83" id="objDataBind" height="0" width="0">
<PARAM NAME="DataURL" VALUE="base.csv">
<PARAM NAME="UseHeader" VALUE="true">
<PARAM NAME="FieldDelim" VALUE=",">
<PARAM NAME="CharSet" VALUE="shift_jis">
</OBJECT>
<TABLE DATASRC="#objDataBind" BORDER="1" ID="tblData">
<thead>
<TR>
<Th><div>番号</div></Th>
<Th><div>タイトル</div></Th>
</TR>
</thead>
<TBODY>
<TR>
<TD><DIV datafld="num"></DIV></TD>
<TD><DIV datafld="title"></DIV></TD>
</TR>
</TBODY>
</TABLE>
</BODY>
</HTML>
csvファイルは以下のとおりです。
num,title
1,うさぎ
2,かめ
3,ネコ
4,犬
5,かめ
No.2ベストアンサー
- 回答日時:
すみません、言葉が少し足りてなかったかもしれないです。
//データにフィルタをかけます。
以降の4行を消してから
と書く予定でした・・・
↓こんな感じに(目的の動作が分からないので例として適切か分かりませんが応用してください)
function ShowTable()
{
//selectにて選択された値を取得します。
var nIndex,tIndex;
nIndex = document.frmSample.selNumber.value;
tIndex = document.frmSample.seltitle.value;
//データにフィルタをかけます。
objDataBind.Filter="num=" + nIndex + "&title=" + tIndex;
objDataBind.reset();
}
あと、これでもだめなら、私も違いがよくわかってませんが
objDataBind.object.Filter="num=" + nIndex + "&title=" + tIndex;
objDataBind.object.reset();
とかも試してください。
15mm様
ご丁寧な回答ありがとうございました。
完璧に思っていた通りのものが出来ました!!
感謝、感謝、感激です。
本当にどうもありがとうございました。
今後ともどうぞよろしくお願いいたします。
No.1
- 回答日時:
(1)(2) numが重複しないのであれば、numとtitle両方をフィルタする必要は無いです。
・objDataBind.Filter="num=1&title=うさぎ";objDataBind.reset();
・objDataBind.Filter="num>1&title=*め";objDataBind.reset();
とかがうまく動作してくれたらこれを参考にしてみてください。
(3)
<PARAM NAME="Filter" VALUE="num<0">とか、絶対にこの条件ではヒットする項目は無いというフィルタを指定
(4) (3)のようなフィルタ指定をすれば何も表示されない
objDataBind.Filter="num<0";objDataBind.reset();
IE標準のデータバインドのようなので、参考URLも覗いてみてください。
http://www.makoto3.net/document/databind/databin …
余計なお世話ですが、
<script type="text/javascript">を推奨します。
<TITLE>データバインドル</TITLE>←一文字多い?
参考URL:http://www.makoto3.net/document/databind/databin …
15mm様
わかりやすいご回答を下さりありがとうございました。
早速試してみましたが私の記述の仕方が悪いのか、テーブルヘッダーのみ表示はされたのですが、フィルタをかけても何もヒットされませんでした。
頂いた参考URLも覗いてみたのですが、どれも全てデータが表示された状態で初心者の私では応用することができませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
ボタンかリンクをクリックする...
-
onclickが動作しない
-
クリックでテーブル内の背景色...
-
クリック→テキストボックスに追加
-
VB.NETで<Input>タグ、<text...
-
開いた子ウィンドウにあるボタ...
-
onClickがinput type="image"だ...
-
クリックさせたいが、click()が...
-
innerHTML内では改行は禁止?
-
ブラウザの外にあるマウスの情...
-
iOSのみダブルタップが必要
-
firefox、opera等での番号の数え方
-
HTMLのテキストボックスへのド...
-
正規表現で複数マッチ条件で悩...
-
<JavaScript>tableタグを入力不...
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
slickのレスポンシブ > center...
-
hiddenのvalueの値を変えたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
JavascriptでDOM-based XSSの発...
-
onclickが動作しない
-
クリックさせたいが、click()が...
-
追加ボタンを押した際に ok ボ...
-
innerHTML内では改行は禁止?
-
ボタンかリンクをクリックする...
-
formのfileの値をhiddenでも持...
-
javaScriptの変数をJavaの変数...
-
JavaScriptのfileオブジェクト...
-
VB.NETで<Input>タグ、<text...
-
受け取ったパラメータが文字化け
-
JQueryでfunctionに引数としてI...
-
javascriptで作成されたテーブ...
-
jQueryで設定したイベントハン...
-
開いた子ウィンドウにあるボタ...
-
コードレビューをお願いします。
-
ボタンをクリックするとテキス...
-
BackSpaceしたい(QNo.2734284の...
-
URL 判定
おすすめ情報