0

私はasp.net MVCとJQueryを初めて使用します。NerdDinner チュートリアルを使用して MVC サイトを作成しました。作成ビューと編集ビューでは、データ入力用に部分ビュー (以下に簡略化したコード) を使用しています。jquery コードをどこに配置しますか?

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Marlow.Controllers.SubcontractFormViewModel>" %>

<% using (Html.BeginForm()) {%>

    <fieldset>
        <legend>Fields</legend>
        <p>
            <label for="grp">group:</label>
            <%= Html.DropDownList("grp", Model.Groups) %>
            <%= Html.ValidationMessage("grp", "*") %>
        </p><p>
            <input type="submit" value="Save" />
        </p>
    </fieldset>

<% } %>
4

4 に答える 4

1

jQueryコードを好きな場所に配置できると言っている人についてはよくわかりません。

私は懸念事項の分離が大好きです。この場合、PartialView ではなく実際の View にコードを配置するのが賢明かもしれません。

コードを PartialView に配置するとすぐに、その動作を永遠に定義することになるためです。ビューにコードを配置すると、後で動作を再定義する柔軟性が得られます。

完全に柔軟にするには、コードを .js に配置し、ビューからロードします。その後、他のビューでもコードを再利用できます。

もう 1 つの利点は、jQuery が部分的なポストバックを実行している場合、それをビュー レベルに配置することで、変数を設定したりモデルを PartialView に渡して同じ結果を得たりするのではなく、ビューで /controller/action をカスタマイズできることです。

上記は明らかに、 PartialView が他の方法で再利用できるという前提に依存しています。ロックされていて固定されている場合は、コードを部分ビューに配置します。

于 2010-01-21T22:54:49.817 に答える
1

パーシャルまたはパーシャルを呼び出すページ、または外部ファイルのいずれかで、jquery コードをどこにでも配置できます。

それは、jquery コードをパーシャルに埋め込む場合にどのように起動するかによって異なります。

あなたの質問が <%%> の外側の内側に配置するかどうかである場合、答えは外側にあります

于 2010-01-21T20:13:19.233 に答える
1

script タグを (X)HTML 構造の有効な部分に配置する限り、特に問題はありません。jQuery の document.ready 関数を使用して、ドキュメント全体が読み込まれるまでスクリプトの実行を遅らせる必要があります。これは、操作している HTML の後に続くスクリプトに依存しないことを意味します。

そうは言っても、多くの場合、スクリプトをビューに埋め込むよりも、できるだけ多くのスクリプトを外部スクリプト ファイルに入れる方が望ましいです。(外部スクリプト ファイルは、HTML ドキュメントの本文の下部に含める必要があります。これにより、ブラウザーのパフォーマンスが最適化されます)

于 2010-01-21T20:15:59.767 に答える
1

部分ビューまたはそれをロードするページに配置できます。ただし、注意すべきことの 1 つは、部分ビュー内にある要素で発生する jQuery イベントがあり、メイン ページにスクリプトをロードする場合、別の場所から部分ビューをロードする場合 (つまり、GET)、それらのイベントがあることです。 DOM 要素には添付されません。

そのため、スクリプトをメイン ページに配置する場合は、jQuery Live関数を使用してイベントを結び付けてください。

于 2010-01-21T20:19:29.553 に答える