y-matsui::weblog

電子楽器、音楽、コンピュータ、プログラミング、雑感。面倒くさいオヤジの独り言

DataBindの値をJavascriptに引き渡す方法

DataBindのまとめページデータバインド入門
Microsoftの文書 データバインド←ちょっと難しい表現です。

div,a,td,spanなんていうHTML要素に、CSVから読み込んだ属性をバインドできるのは、それだけでも強力。しかし、これをJavascript関数への引数として使えばもっと楽しい。
・・ってことで、aタグにonclickイベントを追加して、Javascriptへの引数としてバインドされた値を渡す例。

例:アイコンとファイル名をCSVで読み込んで、ファイル名をJavascriptに渡す
<td bgcolor="#e6e6e6" align="center">
<a datafld="FileName" datasrc="#ID1" onclick="Javascript関数(this);return false;">
<img datafld="IconFileName" BORDER="0" width="16">
</a>
</td>

ここで、
datasrc=#ID1は読み込んだCSVにつけたID,datafldはCSV1行目の列名(フィールド名)

ここでちょっとしたTipsとして、aタグのリンク動作を無効にする方法
ここでは、onclickイベントの戻り値にfalseを返すことでaタグ動作を無効化している。
aタグの動作を無効にする方法としては
Javascript関数の実行後にfalseを返す
・aタグにhreff="javascript:void(0)"
なんていう方法があるが、今回はあとの2つでは動作しなかった。

このことから「onclickを評価してから、aタグのページジャンプが処理される」ことが推測される。

※「DataBind機能では、href="javascript:ほにゃらら"は動作しない。」
alert(’文字列’)を挿入しても動作しなかった。