問題タブ [renderpartial]
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.
c# - ASP.NET MVC 2 : マスター/詳細ビューの作成に問題がある
現在、ASP.NET MVC 2 プロジェクトでマスター/詳細ページを作成する際に問題が発生しています。このプロジェクトでは、テーブル マッピングに Entity Framework OR/M を使用します。オブジェクトの別のリストを渡すカスタムCategoryModelを使用しています。プレゼンテーションのためにモデルを単純化しました。
CategoryDescriptionは、各Categoryの「カルチャ言語ベース」の説明のコレクションです。
CategoryModelをコントローラーに渡しています [繰り返しますが、コントローラーのEditメソッドはプレゼンテーションのために簡略化されています] :
その後、データをビューに送信します。ビューは、CategoryDe scriptionごとにPartialViewをレンダリングしようとします。これは私が失敗する場所です[ビューの一部のみが表示され、Categoryオブジェクトを表示する部分は問題ありません] :
私が今抱えている問題は、RenderPartialメソッドに起因します。このメソッドは、データを渡そうとするたびにアプリケーションをクラッシュさせます。
Inherits タグをいくつかのタイプに変更しようとしましたが、問題は解決していないようです。RenderPartial htmlhelperメソッドを使用してデータを渡さなければ、ページは問題なく読み込まれます。
フォーラム ボードでいくつかの提案を試みましたが、この問題を解決する答えが見つかりませんでした。ここでPartialViewのデータを取得するための唯一の制限は、多くの明白な理由から、私の会社のViewData [] 辞書を使用しないことです。
お時間をいただきありがとうございます。私の英語で申し訳ありません。私はカナダ出身のフランス語を母国語としています。
EDIT 01/10 : ループの外側にRenderPartialが 1 つある理由は、説明コンテンツを追加するための新しい入力ボックスのためですが、コントローラーのポストバック編集メソッドにはこれを処理するロジックがあります。ループ内のRenderPartialは、ユーザーがそのカテゴリの既存の説明を編集できるようにするためにあります。ループを機能させることがここでの鍵です。私はテスト目的でスキャフォールディングされたPartialViewを作成しただけで、空の "
こんにちは世界
" PartialViewにデータを渡す場合。どのクラスを継承すべきかわからない場合でも、 PartialViewのコードを追加します。ruby-on-rails - レールの巧妙なユニバーサル フォーム パーシャル
アプリケーション全体で使用する通貨のウィジェットがあります。すなわち。ユーザーは、通貨を EUR -> USD から、または約 13 の他の通貨に変更します。日付など、他にもいくつかのユースケースがありますが、これが最も簡単に説明できます。通貨は基本的に、通貨コントローラーを呼び出してセッション変数を更新し、JS を使用してページをリロードしますが、ページの特定の要素 (つまり、通貨の変更を反映し、他には何も反映しない) のみを取得したいと思います...
または別のコントローラーの場合
ただし、これらの要素は現在のコントローラーに固有のものです。つまり、リストなどのコントローラー固有のパーシャルをレンダリングします... (通貨の計算自体はアプリケーションヘルパーにあるため、新しいロジックは行われません)。通貨コントローラーは単純です。異なるコントローラーによってロードされたパーシャル。(場所、場所など)
この目的のために特定のすべてのコントローラーでアクションを作成する以外に、現在のコントローラーに固有の要素をレンダリングできるように動作させるにはどうすればよいですか? すなわち。現在のコントローラーを通貨に渡すことができます
それが理にかなっているのかどうかはわかりませんが、他の人の脳ではなくても、少なくとも自分の脳ではそうであることを願っています.
asp.net-mvc - 部分ページ読み込み機能の実装方法
非常にかさばるページを持つアプリケーションがあり、これ以上機能を減らすことはできません。このため、すべてのページを完全にロードするのに時間がかかりすぎています。
ページを順番にロードする方法はありますか。リンク先の URL にアクセスすると、すぐに表示されるコンテンツは少なく、他のコンテンツは 1 つずつ表示されますか?
私たちのウェブサイトでは、エンティティ フレームワークと RJSResult を使用してコンテンツをレンダリングしています。
ありがとう、カマル・カント・パンサリ
jquery - jQuery ajax ページの部分更新
ページを部分的に更新する簡単な jQuery 関数を次に示します。
から呼び出されます
上記のリンクは、部分的に更新された div (ファイルリスト) にあります。
問題は、ajax リクエストが最初のリクエストでは機能するが、2 番目のリクエストでは機能しないことです。2 番目のリクエストは、通常のリンク クリックとして呼び出されます。新しくロードされた次のリンクと前のリンクを理解しているように、DOM にアクセスできない方法があります。
2回目に次/前のリンクをクリックすると、ajaxリクエストも呼び出されるように、これを変更するにはどうすればよいですか。私の質問が十分に明確であることを願っています
asp.net-mvc - asp.netmvcレンダリングhtmlを再帰的に
私は最近奇妙な問題に遭遇しました。私はタスクという名前のデータベースにテーブルを持っています。タスクには、親タスクと複数の子タスク(自己参加)が含まれる場合があります。CTE(共通テーブル式)を使用して、プロジェクト内のすべてのタスクの子とサブ子をnレベルまで返すストアドプロシージャを作成しました。私の必要な結果は次のとおりです
結果は正常に達成されます。最初の列にインデントが表示され、階層関係が示されます。問題は、私がそれを「悪い方法」でやっているということです。以下は私のビューコードです
uは、html文字列を再帰的に返すモデルでCallrecursionメソッドが定義されていることを確認できます。以下はCallRecursionメソッドのコードです。
私の質問は、どうすればこの目標をよりクリーンな方法で達成できるかということです。部分ビューを再帰的に呼び出してhtmlをレンダリングできるかどうか、もしそうなら、ダイナミクスはどうなるかわかりません。コメントや提案をいただければ幸いです。
javascript - 部分レンダリング後に Javascript が実行されない
最初は非表示で、ボタンをクリックすると表示されるasp.netパネルがあります。そのパネル内に JavaScript があり、パネルが表示されるように設定された後は実行されません。JavaScript 関数がページに出力されていることがわかりますが、呼び出されていません。関数が呼び出されるようにするにはどうすればよいですか? 次に例を示します。
c# - C# MVC プロジェクトで偽の httpContext にセッションを追加する
セッションを fakeContext に追加するにはどうすればよいですか?
この関数は、コンテンツを文字列として返す必要がある部分的なリクエスト用に作成しました。部分的なリクエストにセッションがないだけです。
そして、fakeContext.Session = HttpContext.Current.Sessionのようにそれらを追加することはできません
誰か提案?
ruby-on-rails-3 - ヘルパー メソッドが yield キーワードを使用すると、Rails の部分的なテンプレートが繰り返しレンダリングされる
部分的なレイアウトと、yield キーワードを使用してイテレータとしてコード化されたヘルパー メソッドをレールで使用すると、奇妙な動作が見られます。私は誰かができることを願っています:
- 何が起こっているのか、なぜレンダリングが重複するのかを説明してください。
- うまくいけば、リストを返す単純な関数になるようにヘルパー メソッドを再コーディングする以外に、別のアプローチを提案します (暫定的な回避策として既に実行しています)。
したがって、Rails 3 アプリで次の 3 つを作成すると、予期しない出力が得られます。
[更新] 次の組み合わせをテストしました。
erb と haml の問題かもしれませんが、最初にこれを発見したときは haml テンプレートでした。うーん....何が起こっているのか知っている人はいますか?
A) このようなメイン テンプレート (app/views/main/index.html.erb)
B) このようなヘルパー メソッド (app/helpers/main_helper.rb)
C) このような部分テンプレート (app/views/main/_partial.html.erb)
ブラウザーで結果を表示すると、「iterator running with」ブロックが合計 8 回表示されます (1 2 3 4 1 2 3 4)。Railsの部分的なテンプレートメカニズムをねじ込む my_iterator 内の歩留まりであると判断しました。my_iterator を次のようにコーディングすると、出力は期待どおりになります。(my_iterator.each を実行するように部分テンプレートを変更する必要もあります)
これをコーディングして、レールを台無しにしてレンダリングを重複させずに、yield を使用してイテレータとしてヘルパー メソッドをコーディングできるようにする方法はありますか? また、重複したレンダリングがどのように発生するかを誰かが正確に説明できますか?
asp.net-mvc - ASP.NET MVC で NullReferenceExceptions から保護するための正しいパターンは何ですか?
UPDATE 問題は構文の問題でした。@awrigley は、Razor でこれを記述する正しい方法を示しています。
以下の作品:
Foo
特定の上位 1 つの詳細をBar
HTML テーブルとして表示する必要があります。Foo
空のテーブルを非表示にしたり、 nullの場合に「見つかりません」というメッセージを表示したりするにはどうすればよいですか?
例えば。NullReferenceException
次の行にが表示Model.Thing.Prop
されnull
ます。
意図的に null です。リポジトリは空の代わりに null を返しますFoo
。しかし、これは少し的外れです。つまり、 null が与えられた場合、 .Model.Thing.Prop
を呼び出したくないということですHtml.RenderPartial
。
更新
私は運が悪く、次のことを試しました:
その結果、Visual Studio は、行 1、列 1 で期待;
されていること、および行 1、列 1 で;
無効な式であることを教えてくれます (これは、MVC3 のプレリリース ステータスによるものだと思います)。取得したブラウザでページにアクセスする
CS1501: メソッド 'Write' のオーバーロードは引数を 0 とらない
行が@Html.RenderPartial
強調表示されます。
私も試しました
しかし、これは私の部分ビュー内からの結果になり、NullReferenceException
正しくないようです。Model.Thing
は間違いなく有効Bar
であり、Model.Thing.Prop
間違いなくですnull
Foo
。
c# - Asp.net MVC - エリアから部分ビューをレンダリングする
ログインや HTML ヘルパーなどと同様に、すべての開発製品で一般的なものを処理する領域を作成しました。領域内には、領域外で参照しようとしている部分的なビューがあります。でエリア登録しました
そして今、通常のプロジェクトで、MvcCommons エリアのビューを参照しようとしています...
しかし、ビューが見つからないことがわかり続けています。以前は、MVC Commons プロジェクトの作成中にビュー エラーが発生していましたが、エリア フォルダーと既定のビュー フォルダーの両方が表示されていることがエラーでわかりました。今回は、デフォルトのフォルダーのみを取得しています。これを達成する方法はありますか?
みんな、ありがとう!