私はWeb開発にかなり慣れていないので、ASP.NETでMVCを使用していて、jQueryとその関数に苦労しています。RazorViewEngineとASP.NETMVCc#をdevexpressコントロールとともに使用しています。
今これが私の問題です:
@ Html.Action('view'、'controller');を持つビューを取得しました。グリッドビューにリンクするものを宣言しました。
そのグリッドビューで、行が選択され、キーボードでEnterキーが押されたときに、詳細ビューを表示するクライアントサイド関数をいくつか取得しました。
現在、私が使用しているグリッドビューには、テキストフィールドをクリックし、探しているものを入力してEnterキーを押すことにより、いくつかの自動検索オプションがあります。行を検索または選択してEnterキーを押すと、値を保持する値を宣言しました。
その後、検索テキストフィールドでEnterキーを押しても、詳細ビューが開かないようになりました。ただし、検索時にコールバックを実行します。グリッドビューが新しく作成されます。GridViewでのこのコールバックの後、関数が要素を検出しなくなるという問題が発生しました。
jqueryで.find関数を使用してみましたが、役に立ちませんでした。これが私が試したいくつかのスニペットです:
(これらは$(document).ready関数にあります)
$('#id').click(function () {
// do something
});
そして.findバージョン:
$('#gridview').find('#id').click(function () {
// do something
});
したがって、基本的には、グリッドビューが再構築された後に要素を見つけられるようにしたいと思います。
::編集::textfields.clickのIDは同じままです。
:: EDIT2 :: devexpressグリッドビューのEndCallbackclientsideevent内に現在のコードを追加することで、安価で汚い解決策を見つけました。しかし、これを行うにはまともな方法が必要です...しかし、これは、IDが同じままである私の以前の編集も証明しています。