入力補助機能を追加したい

jQueryなんかでinputタグに文字列を入力したり取得するとき、
inputタグを特定するためにnameやid属性を利用するのですが、
SharePointではnameやid属性はソースでは「ff1{$Pos}」ってかんじの
短い値なのですが、実際に表示されると
ctl00$m$g_cafe866b_6e5b_416a_bf46_5bad614998d9$ff11$ctl00$ctl00$TextField
みたいな感じで長~い文字列になってしまって、あれれ~~って感じになります。


でも、該当の<SharePoint:FormField>タグを<div id="hoge">で囲んで、
<div id="hoge">内の<input>を選択するようにすれば楽勝ですね。


jQueryでいえば $("#hoge input") で見事にinputタグを特定できます。
これを使えば、入力補助機能が簡単に作れたりしそうですね。


これに気が付くのにだいぶかかってしまいましたが・・・
初めは長いid値に$ff11って文字列があるので、これを部分一致で検索すれば~って着手したら、
ff1{$Pos}なら$ff11だけど、ff20{$Pos}の場合$ff20_1になったりと一桁と二桁だと動きが違う。
3ケタの場合は確認してないけど、この方法はだめだなってね。


たぶん<asp:><SharePoint:>のidとnameはシステム側で競合を防ぐ処理が動くんだろうね。



コメント

このブログの人気の投稿

SharePoint2010のカレンダーをカテゴリ別に色分けする

メールの整理

ガーデンライト買ったけど…