MVCでは、テーブルの行に主キーを配置するためのベストプラクティスは何ですか

クリス

私の質問は、テーブルの行に主キーを配置し、Jqueryを使用してIDを見つける場合のベストプラクティスは何ですか。

したがって、MVCを使用して、クリックするとモデルポップアップを開く編集および削除ボタンを使用してデータのテーブルを作成します。

あなたがすべき:

a)各ボタンのデータ属性に主キーを配置します

b)各行に非表示フィールドがある

c)各ボタンでOnclickを使用し、IDを機能に渡します

d)trタグにIDがある

コーディングがなくなった
  • a)必要がない場合は、属性を繰り返さないでください(ページが肥大化します)
  • b)非表示のフィールドは、値をポストバックする必要がある場合にのみ有効です
  • c)onclickjQueryでハンドラーを使用しないでください(正当な理由もなくハンドラーをコードから分離し、単一のハンドラーのみをサポートします)
  • d)データ属性にIDを使用しないでください(IDはページ上一意である必要があるため、衝突する可能性が高くなります)

だから私はオプションで行く傾向がありますe)

  • e)jQueryで使用するだけの場合は、data-id=""各行に1回ずつ使用する傾向があります。

次に、行の任意の要素から、.closest('tr').data("id")etcを使用してPKを取得します。(実際、私はこのパターンを使用することが多いので、これを1つで行うためのカスタムjQuery拡張機能があります。例:) .closestAttr("data-id")

.closestAttr():

興味のある人のために提供されたTypeScriptコード:

// Find the nearest matching attribute in the elements themselves, as well as in all ancestors
jQuery.fn.closestAttr = function (attribute: string): string
{
    return this.closest('[' + attribute + ']').attr(attribute);
};

またはプレーンJSで:

// Find the nearest matching attribute in the elements themselves, as well as in all ancestors
jQuery.fn.closestAttr = function (attribute)
{
    return this.closest('[' + attribute + ']').attr(attribute);
};

追記:データが親の下にグループ化されている場合data-id=""、親FK /グループなどを表す別のデータがテーブルにあります。

更新-コメントで提供されているコード例の場合:

私はそれをこのようにします:

@foreach (var i in n) 
{ 
    <tr data-id="@i">
        <td>@i</td>
        <td><input type="button" class="edit" value="Edit" /></td> 
        <td><input type="button" class="delete" value="Delete" /></td> 
    </tr> 
}

.closest('tr').data("id")押されたボタンからIDを取得します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

テーブルの主キーのベストプラクティスは何ですか?

分類Dev

テーブルの主キーを選択する際のベストプラクティスは何ですか

分類Dev

BigQueryテーブルにデータをロードするためのベストプラクティスは何ですか?

分類Dev

ページにCSSとJavaScriptを含めるためのベストプラクティスは何ですか?

分類Dev

REST で状態表現のために JSON スキーマを参照するためのベスト プラクティスは何ですか?

分類Dev

Vuexモジュールを分離するためのベストプラクティスは何ですか?

分類Dev

多層データをmySQLに保存するためのベストプラクティスは何ですか?

分類Dev

JHipsterに初期データを保存するためのベストプラクティスは何ですか?

分類Dev

RESTフルAPIで外部キーフィールドをシリアル化するためのベストプラクティスは何ですか

分類Dev

Goウェブアプリでキーをロードするためのベストプラクティスは何ですか?

分類Dev

開発ブランチをマスターブランチにマージするためのベストプラクティスは何ですか

分類Dev

Google App Engineでスケジュールされたアプリを実行するためのベストプラクティスは何ですか?

分類Dev

laravelブレードファイルにPHP行を書くためのベストプラクティスは何ですか

分類Dev

統合テストを実行するためのベスト プラクティスは何ですか?

分類Dev

要素を配置するためのベストプラクティスは何ですか-フロートまたは配置?

分類Dev

Laravel Blade:ブレードファイルにJavaScriptを追加するためのベストプラクティスは何ですか?

分類Dev

Jenkinsパイプラインアーティファクトをアーカイブするためのベストプラクティスは何ですか

分類Dev

iOSでフォームを実装するためのベストプラクティスは何ですか

分類Dev

ReactJSでフォームを操作するためのベストプラクティスは何ですか?

分類Dev

AngularJSページをリロードするためのベストプラクティスは何ですか

分類Dev

Rxハンドラーを実装するためのベストプラクティスは何ですか?

分類Dev

Huawei AuthServiceを使用するときにユーザープロファイルを管理するためのベストプラクティスは何ですか

分類Dev

シェルスクリプトでブール値を表すためのベストプラクティスは何ですか?

分類Dev

例外メッセージを構造化するためのベストプラクティスは何ですか?

分類Dev

X線デーモンを設定するためのベストプラクティスは何ですか?

分類Dev

スプリングブートアプリケーションの値を格納するためのベストプラクティスは何ですか?

分類Dev

さまざまなオブジェクトをUIViewsSwiftにロードするためのベストプラクティスは何ですか

分類Dev

大きなcsvを正規化されたリレーショナルデータベース(複数のテーブルを含む)にインポートするためのベストプラクティスは何ですか

分類Dev

Webサービスをテストするためのツールとベストプラクティスは何ですか?

Related 関連記事

  1. 1

    テーブルの主キーのベストプラクティスは何ですか?

  2. 2

    テーブルの主キーを選択する際のベストプラクティスは何ですか

  3. 3

    BigQueryテーブルにデータをロードするためのベストプラクティスは何ですか?

  4. 4

    ページにCSSとJavaScriptを含めるためのベストプラクティスは何ですか?

  5. 5

    REST で状態表現のために JSON スキーマを参照するためのベスト プラクティスは何ですか?

  6. 6

    Vuexモジュールを分離するためのベストプラクティスは何ですか?

  7. 7

    多層データをmySQLに保存するためのベストプラクティスは何ですか?

  8. 8

    JHipsterに初期データを保存するためのベストプラクティスは何ですか?

  9. 9

    RESTフルAPIで外部キーフィールドをシリアル化するためのベストプラクティスは何ですか

  10. 10

    Goウェブアプリでキーをロードするためのベストプラクティスは何ですか?

  11. 11

    開発ブランチをマスターブランチにマージするためのベストプラクティスは何ですか

  12. 12

    Google App Engineでスケジュールされたアプリを実行するためのベストプラクティスは何ですか?

  13. 13

    laravelブレードファイルにPHP行を書くためのベストプラクティスは何ですか

  14. 14

    統合テストを実行するためのベスト プラクティスは何ですか?

  15. 15

    要素を配置するためのベストプラクティスは何ですか-フロートまたは配置?

  16. 16

    Laravel Blade:ブレードファイルにJavaScriptを追加するためのベストプラクティスは何ですか?

  17. 17

    Jenkinsパイプラインアーティファクトをアーカイブするためのベストプラクティスは何ですか

  18. 18

    iOSでフォームを実装するためのベストプラクティスは何ですか

  19. 19

    ReactJSでフォームを操作するためのベストプラクティスは何ですか?

  20. 20

    AngularJSページをリロードするためのベストプラクティスは何ですか

  21. 21

    Rxハンドラーを実装するためのベストプラクティスは何ですか?

  22. 22

    Huawei AuthServiceを使用するときにユーザープロファイルを管理するためのベストプラクティスは何ですか

  23. 23

    シェルスクリプトでブール値を表すためのベストプラクティスは何ですか?

  24. 24

    例外メッセージを構造化するためのベストプラクティスは何ですか?

  25. 25

    X線デーモンを設定するためのベストプラクティスは何ですか?

  26. 26

    スプリングブートアプリケーションの値を格納するためのベストプラクティスは何ですか?

  27. 27

    さまざまなオブジェクトをUIViewsSwiftにロードするためのベストプラクティスは何ですか

  28. 28

    大きなcsvを正規化されたリレーショナルデータベース(複数のテーブルを含む)にインポートするためのベストプラクティスは何ですか

  29. 29

    Webサービスをテストするためのツールとベストプラクティスは何ですか?

ホットタグ

アーカイブ