問題タブ [partialviews]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc - フォーム付きのASP.NETMVC部分ビュー
部分ビューを使用したいシナリオがありますが、データをコントローラーに渡す際に問題が発生します。これが私がやろうとしていることの基本的な例です。
オブジェクト:
- お客様
- 注文
顧客がIList<Order>
それを持っています。ユーザーが情報を編集できるように部分ビューが必要です。表示するデータを取得できますが、フォームが投稿すると、Customerオブジェクトの下のリストがnullになります。
また、部分的なビューで別のフォームを使用しようとしました。これを行うと、次のようにコントローラーでパラメーターを作成すると、データが取得されます。
しかし、私がこれを行うとき
リストはnullです。
誰かがこれを達成する方法についてより良い提案を持っているなら、私に知らせてください。
asp.net-mvc-2 - ASP.NET MVC、PartialViewsを介したフォームの読み込み
ASP.NetMVCとjQueryを使用してアプリケーションを開発しています。ユーザーのアクションに応じて、jQueryの$.ajaxメソッドを使用して部分的なビューをページにロードします。
私が経験している問題は、クライアント側の検証が有効になっているフォームを含む特定の部分ビューに関連しています。この部分ビューで生成されたJavaScriptコードが実行されていないように見えるため、クライアントの検証が機能していません。
誰かがこの問題の解決策を持っていますか?
ありがとう!
禅
asp.net-mvc-3 - 部分的なビューに関するRazorの質問を含むMVC3
部分的なビューに関するRazorの質問を含むMVC3。
私はこれを持っています:
非常に簡単な投稿と返信のMVCアプリimは、学習のために遊んでいます。返信用に表示するパーシャルを取得できません:/
パーシャルを追加すると、「MvcGroupie.Models.Message」が表示されますが、このディクショナリには「MvcGroupie.Models.Reply」タイプのモデルアイテムが必要です。さて、同じページでdiffモデルを使用することはできませんか?最初の行は@modelMvcGroupie.Models.Messageで始まるので、model.postSubjectなどにアクセスできます。しかし、返信を追加して、同じページから返信できるようにしたい場合は、@ modelMvcGroupie.Models.Reply...に分類されます。
これを回避する方法に興味があります...@Html.Partial( "〜/ Views / Shared / replyPartial.cshtml"、Model.Reply)を試しましたが、Model.Replyを認識しません...。
助けを学ぶ私の方法の深刻な障害?
asp.net-mvc - ASP.NET MVCパーシャルビューでモデルとして匿名リストを使用するにはどうすればよいですか?
オブジェクトのリストがContact
あり、そこから属性のサブセットが必要です。そこで、LINQプロジェクションを使用して匿名リストを作成し、それを部分ビューに渡しました。しかし、そのリストを部分ビューで使用すると、コンパイラーはそれらの属性を持っていないと言います。次のように最も単純なケースを試しましたが、それでも部分ビューで匿名オブジェクトまたはリストを使用する機会がありません。
そして部分的なビューの中で、私は持っています:
ただし、@ModelにはFirstNameプロパティとLastNameプロパティがないということです。ここで何が問題になっていますか?@Modelを使用すると、この文字列はブラウザでレンダリングされます。
.net - 部分ビューでは data-val* 属性なし
メインビューモデルに渡される部分ビュー(以下で説明し、フォームを持たない)を呼び出す Html.BeginForm() を含むビューがあります。モデルにはデータ注釈があります。
適切な値を選択せずに送信しようとすると、ページの初期ロード時に検証が完全に機能します。
また、ページに別のボタンがあり、クリックすると同じ部分ビューの別のインスタンスがページに読み込まれます。コントローラーへの $.ajax() ポストを使用すると、PartialView だけが返され、既存の div に追加されます。
これらの動的コントロールをフォームに送信しようとすると、それらは同じモデルにバインドされており、正しい .ValidationMessageFor ヘルパーを設定しましたが、コントロールが data-val で生成されていないように見えるため、それらの検証は表示されません。 *属性。
私はフィドラーを使用し、コントローラーへの $.ajax ポストが、生成された場所でも単純で ValidationMessage のない部分ビューを生成することを発見しました。したがって、追加された動的コントロールに控えめな JavaScript を使用することはできません。
常にフォーム内にビューを配置する必要がありますか?その場合、ネストされたフォームがあり、うまく機能しません。
EDIT 1 :質問ViewContext.FormContext = new FormContext で Adam Tuliper が述べたように、すべての data-val* 属性を含む部分ビューが生成されました。したがって、上記の質問に答えます。現在、動的コンテンツの検証が起動していませんでした。エリック(コメントセクション)に従って、フォームバリデーター[form.removeData( 'validator');]を削除し、動的コンテンツの検証も開始しました。
以下は部分的なビューです
そして、これは部分ビューのモデルです
.net - MVC2の部分ビューでの匿名タイプのモデル
匿名型を使用してデータをビューに渡す例をいくつか見てきました。ただし、重要な情報が不足しているようです。次の不自然な例を考えてみましょう。
Index.aspx呼び出し
そしてtitle.ascxは単純です:
問題のアクションに移動すると、実行時例外が発生します。
これを行うには他の方法があることを私は理解しています。ビューを強く型付けするか、データをViewDataオブジェクトにプッシュすることができます。この特定のケースでは、Nameプロパティを持つ任意のオブジェクトを渡して、Nameにバインドできるようにしたいと思います。足りないものはありますか?
ajax - MVC3 - パラメータ値は常に null
2 つの部分ビューと Ajax を使用して、「高度な検索」ビューを作成しようとしています。利用可能なすべての検索条件をプロパティとして持つ「SearchFilter」エンティティを定義しました。「_Filter」部分ビュー (OnSuccess AjaxOption) での送信時に、「_Results」部分ビューを更新する「ListResults」アクションにそれを渡す必要があります。
問題は、ListResults アクションの着信パラメーターとして常に null エンティティを取得することです。
コードは次のとおりです。
AdvancedSearchView.cshtml
_Filter.cshtml
コントローラ
ビューモデル
私が何か間違ったことをしていることは間違いありませんが、それが何であるかはわかりません。
BeginForm の生成された HTML マークアップは次のようになります。
.net - MVC3 .net 複数モデルまたは単一ビュー モデル
3 つのタブ (したがって 3 つの div) を持つ Web ページを作成したい: タブ 1 - 個人情報の更新 タブ 2 - 注文の確認 タブ 3 - ログオンの詳細の変更
私が知る限り、これを実装するには2つの方法がありますが、ベストプラクティスを知りたいです.
最初は、それぞれ別のモデルを実装する 3 つの部分ビューを持つことです。2 番目は、単一の ViewModel を実装する 3 つの部分ビューを持つことです。
部分ビューを使用すると、「モデル A を期待しているがモデル B を取得しました」というエラーが発生する場合の最初のオプションでは、RenderAction を使用してこれを回避できると思いますが、それはベスト プラクティスですか?
意見を歓迎します。
ありがとう
c# - MVC3ネストされた部分ビューの送信。それはどのように機能しますか?
mvc3パターンでの作業を開始し、問題に直面しています。
問題の説明は次のとおりです。
一部のコンテンツをレンダリングし、その部分ビューに表示するために必要なすべてのデータを含むMasterPartial
という名前のモデルにバインドされている部分ビューがあります。MasterPartialModel
はMasterPartialView
nレベルまでネストされた部分ビューを持ち、内でオンデマンドでレンダリングするネストされた子部分ビューMasterPartialView
はでバインドされChildPartialView
ます。
さらに、MasterPartial
ビューにはフォームタグがあります。今、私の質問は、提出時にどのモデルを受け取るかであり、私の理解までは、フォームが宣言されているビューのモデルになります。ユーザーがチャイルドビューの1つによってレンダリングされたデータに変更を加えたかどうかをどのように知ることができますか。ユーザーがオンデマンドでレンダリングした子ビューのモデルを取得するにはどうすればよいですか、またはMVC3パターンのこの種の問題にどのように対応するのですか?
asp.net-mvc-3 - PartialView のボタンをクリックした後にメイン ビューをリロードする
ユーザーが検索を実行できる部分ビューがあり、検索結果が選択ボックスに表示されます。私のメインビューには、選択ボタンが押された後に検索結果を表示するセクションがあります。現在、選択ボタンをクリックすると、正しい情報がメイン ビューの正しいモデルに読み込まれますが、メイン ビューは変更されません。更新をクリックすると、ページが正しく更新されます。プラグイン ビューでボタンがクリックされたときにページを自動的に更新するにはどうすればよいですか?
Index.vbhtml
メイン アプリのメイン ビュー ( ) のセクション:
プラグインのコントローラー メソッドは次のとおりです。
hostApp オブジェクトにブール値を設定しようとしましたが、メインのカミソリ ビューで true の場合はこの関数を呼び出します。
編集:
選択ボタンがクリックされたときに呼び出される JS 関数:
プラグイン ビューで使用されるフォーム: