2009-04-10 3 views
0

私は要素IDが "message" + id(message1、message2など)のメッセージのリストを持っています ユーザーが特定のメッセージからajax要求を出したときにidだけにアクセスしたい場合。私は送信する前にjqueryのメッセージIDからIDを取り除くべきですか、それともサーバー側で行うべきですか?または、各メッセージのWebページ上にIDを表す簡単な方法がありますか?隠しidsを格納してから、それらをajaxで送信する、ベストプラクティス?

答えて

1

属性としてメッセージIDをDOM要素自体に添付できます。 はMooToolsのでは、それは私は非常によく似たものがあるjQueryの100%確信して

Elm.set('messageId',12);//12 is an arbitrary message id I chose for this example. 
//get it 
alert(Elm.get('messageId')); 

です。 しかし、既知の形式の文字列からJSを使用してid自体をストライピングすることはそれほど難しくありません。

0

ユーザーは何かをクリックする必要がありますか?それがリンクであれば、私はidをonclick関数呼び出しのどこかに置くでしょう。それがボタンの場合、隠されたフォーム入力と同じ取引です。 jQueryを使ってこれをすべて実行していると、すべての作業が簡単になりますが、特に問題はありません。

+0

どちらも、そのa div。ユーザーはdivを調べ、ajax呼び出しを開始します。 div idにはidが入っていますが、どのように分割するのですか? – zsharp

+0

それはリンクの場合と同じonclick関数を持っています。 –

0

残りのページの仕方によっては、各要素をフォームタグに囲み、idに非表示のフィールドを使用できます。潜在的に、これをjqueryフォームプラグイン(http://www.malsup.com/jquery/form/)と組み合わせて実行すると、全体的な開発の労力を節約できます。

DOMに属性を追加することは、準拠していない属性をそこに置くことを心配しない限り、もちろん機能します。

いずれにしても、サーバー上の文字列の値を取り除くのではなく、id値をサーバーに送信することをお勧めします。これは、よりクリーンであり、懸念の視点から分離されています。