<!-- Some place on the webpage -->
<input type="text" id="firstName">
<!-- Some other place on the same webpage, or maybe content ajaxed in later -->
<input type="text" id="firstName">
それぞれ独自の ID を持ついくつかの入力フィールドを持つ HTML ページを生成するサーバー側スクリプトがあるとします。あるサーバー側クラスが Web ページの一部に入力フィールドを追加し、別のクラスが Web ページの別の部分を処理する場合があります。または、ページのさまざまな部分でさまざまなプログラマーが作業している可能性があります。HTML 入力フィールド ID との衝突を避けたい。この例として、親と同じ入力フィールド ID を持つ jQuery ダイアログ ポップアップを持つ親フォームが考えられます。現在、ID を生成するサーバー側クラスの名前を ID のプレフィックスとして付けています (また、どの部分がプレフィックスであるかを明確にするためにアンダースコアも付けています)。この方法で完全に一意の ID を取得するには、サーバー側クラスの完全な名前空間を含める必要があり、これにより ID が非常に長くなる可能性があります。
入力にプレフィックスを付けるよりも良いアプローチはありますか、またはこれのベストプラクティスは何ですか? 私は通常、この例外を除いて、すべての変数にキャメルケースを使用します。これはその規則を破る良い例外ですか?
あなたのほとんどは何をしていますか?ID ではなく、これらの入力フィールドを選択する方法を変更していますか? 入力フィールドをform
タグまたはdiv
タグでラップし、サーバー側に機能を追加してこれらを作成しますか? (これらの入力を選択するために何をラップするかを制限しない自由が欲しいです。サーバー側のコードは、それらの入力がページに送られていることを知っているだけで値を取得するクライアント側のコードを生成する必要があります。ページ上の他のタグについて知っている. 管理がはるかに簡単です.) フィールドの各グループに css クラスを追加していますか?