問題タブ [clientid]
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 - jQueryで見つけられるように、ここのマークアップにtextBoxのclientIdを追加できないのはなぜですか?
単に、client-clickイベントに対して1つのtextBox'txtPersonId'のクライアントIDを渡そうとしているので、そのtextBoxコントロールに移動して、そのjQueryラッパーをloadePerson()関数に渡すことができます。
これは、aspxマークアップでデカールする方法です。
しかし、私がそれをレンダリングすると、
プレースホルダーはそのままで、レンダリングされたコントロールのクライアントIDに置き換えられません。
なぜこれが起こるのか、そしてどのようにそれを克服する必要があるのか、何か考えはありますか?
asp.net - asp.net外部JavaScriptファイルでControl.ClientIDが見つかりません
読み込み時に、.NET パネル コントロールを非表示にする JavaScript setTimeout() 関数を呼び出し、最初の読み込み時にコード ビハインドで非表示にします。保存ボタンをクリックすると、パネルが表示されるように設定され、setTimeout() 関数が呼び出される時点でページがリロードされます...基本的に、保存をクリックすると、「詳細が保存されました」というパネルが 3 秒間表示されます。消えます。
問題は、外部 JavaScript ファイルが _pDivAlert.ClientID を見つけられないことです (デバッグしたところ、null が返されます)。コードが .aspx ページのタグにある場合にのみ機能します。クライアント ID を HideControl() 関数に渡す方法、または外部 JS ファイルから ClientID を見つける方法について何か提案はありますか?
これが私のコードです。何か提案はありますか?
また、ToggleAlert() 呼び出し内で ClientID を送信しようとしましたが、うまくいきませんでした:
外部 JS:
asp.net-3.5 - ASP.NET 3.5 コントロール ID 生成の回避: コントロールが後続のポストバックで異なる順序で作成された場合のポストバック イベント
私は Web サイトのコメント システムに取り組んでおり、ポストバックごとに、このページに関連するデータベース内のすべてのコメントに対して、ページがユーザー コントロール (ucComment と呼ばれる) を生成します。各 ucComment には、個々のコメントに返信できる [返信] ボタンがあります。
新しいコメントが作成されるたびに、次のポストバックですべてのページのコントロール ID がオフセットされることに最終的に気付いたとき、Respond ボタンが何もしないという問題がありました。つまり、ctl00_Content_ctl00_ctl01_ctl0 7 _lbtnRespond をクリックすると、そのコントロールは実際には次のポストバックでctl00_Content_ctl00_ctl01_ctl0 8 _lbtnRespond として生成されます。したがって、ctl07 に関連付けられたイベントは発生しません。
Web をいじっているときに、ClientID のオーバーライドについて読みました。コントロールに好きな名前を付けることができれば、問題を回避できると思いました。 http://west-wind.com/Weblog/posts/4605.aspx 素晴らしいハックのように見えましたが、ページで生成された ID とコントロールでの ID の表現方法が一致しないため、イベントは発生しません。木。
MasterPage から派生して、上記のハックをポストバックで機能させるためにコントロール ツリーが機能する方法を変更した人もいます: http://www.netquarry.com/index.php/2009/03/master-pages-ajax -and-javascript-10292/ しかし、計り知れない影響があるのではないかと心配しています。
特定のコメントに応答し、そのポストバックでコントロールの名前が変更された場合でも応答イベントが引き続き発生するように、コメント システムを機能させるにはどうすればよいですか?
c# - ASP.Net: ユーザー コントロールのコード ビハインドで ClientID が正しくない
次のコードは機能しません。マークアップはユーザー コントロールにあるため、ClientID が TextBox ID に対して間違ったプレフィックスを返すのはそのためだと思います。
マークアップ:
コード ビハインド:
ブラウザでの結果:
ご覧のとおり、JavaScript 呼び出しのパラメーターは ですがDoctorsMainArea1_ctl00_txtName、入力要素の実際の ID は ですDoctorsMainArea1_ctl01_txtName。
これを修正する方法はありますか?jQuery? 何が起こっているかの説明にはあまり興味がありません (このページに干渉している別のコントロールがあるかもしれません) が、問題を解決するためのより確実な方法です。
javascript - JavaScript を使用して、コンテンツ コントロール内のテキスト ボックスの clientId が必要です
すべての JavaScript を含むマスターページがあり、コンテンツ コントロール内に、JavaScript 関数を呼び出すリンクがあり、サーバーによって別の方法でレンダリングされたら ID を渡したいと考えています。
ただし、次のエラーが発生し続けます。
プロパティ アクセスは、プロパティに割り当てるか、その値を使用する必要があります。
どうすればこれを達成できますか?
asp.net - asp.net 2.0 Web サイトを Framework 4.0 に展開するときに ClientID が変更される
バージョン 4.0 ランタイムの GoDaddy でホストされている Web サイトがあります。問題は、サーバー コントロールのクライアント ID が "contentPlaceHolder1_drpBanks" として生成されることです。以前は (Web サイトが他のサーバー上にあった場合)、"ctl00_contentPlaceHolder1_drpBanks" として生成されます。
私が知る必要があるのは、コードに変更を加える必要がないように、これを解決する方法があることです。
web.config ファイルなどの設定のように。
c# - clientIDによる制御を取得します
リピーターアイテムコントロールのクライアントIDを解決し、それを他のコマンドで使用したいのですが、彼のクライアントIDでコントロールを取得するにはどうすればよいですか?
TextBox TB = FindControl ...?
webforms - `_0` でサフィックスされた ASP.NET 4 Web フォーム クライアント ID
昨年、すべての新機能を ASP.NET MVC に移行しました。
ただし、多くの JavaScript コードを含む従来の WebForms ページがまだたくさんあります。これらをすぐにアップグレードする機会はありません。
最近では、ASP.NET 4 にも移行しましたが、これにより、これらのレガシー ページの JavaScript コードの負荷が壊れたようです。
クライアントIDの前は次のとおりです。
現在、それらは次のようになりました。
その_0接尾辞はどこから来たのですか?controlWeWantには 1 つしかないpanelControlNameため、サフィックスは値を追加しません。
ハードコーディングされたクライアント ID が WebForms ではよくないことはわかっています。私たちが ASP.NET MVC に移行した理由の 1 つは、WebForms によって生成されるひどい HTML でした。しかし、このレガシ コードについては、私たちはそれで行き詰まっており、私はそれを変更するつもりはありません (適切に変更する自由な時間ができる日が来るまで)。
_0ASP.NET 4 がサフィックスを追加するのはなぜですか?
オフにできますか?
それを回避する別の方法はありますか?
javascript - javascript を使用してマスターページにネストされたパネル コントロールの clientID を取得する
これが制御構造です
ContentPlaceHolder
--> ウィザード
--> パネル
x 分後にパネルを表示するために setTimeout を使用しています。
パネルの ClientID を取得するにはどうすればよいですか?
必要な JavaScript の行は次のようなものです。
aspx
JavaScript
asp.net - フォーム要素の ASP.net オーバーライド クライアント ID
テキストボックスが与えられた場合:
これは次のようにレンダリングされます。
ブラウザのオートコンプリート機能は、この名前/IDを自動入力できるフィールドとして認識しないと思います.標準的に認識される名前ではありません.
オートコンプリートがクライアント ID を認識する可能性を高めるために、クライアント ID をオーバーライドする方法はありますか?