0

いくつかのプロパティが定義されているカスタムメイドのサーバーコントロールがあります。

<cc1:DropdownCheck ID="ddcStatus"  runat="server" CssClass="ddlchklst" JQueryURL="~/Scripts/jquery.js"
                    Title="Select Status(es)" OpenOnStart="false" divHeight="17px" 
                ImageURL="Images/DropDown.PNG" >
            </cc1:DropdownCheck>

サーバーコントロールのクリックイベントでTitleプロパティの値を設定するにはどうすればよいですか。私の現在のjqueryfnは次のようになります...

$("#ddcStatus").click(function () {
            //$('#ddcStatus').attr("Title",'Items Selected');
            //document.getElementById("ddcStatus").Title = 'Items Selected';
        });

どちらのステートメントも機能しませんでした。getElementByIdステートメントは、オブジェクトがnullであることを示すスクリプトエラーを出しました。

4

2 に答える 2

3

問題はセレクターにあります。「#ddcStatus」はID ddcStatusの要素を選択するために使用されますが、clint側では同じではありません。あなたはそれを「abc_xzy_ddcStatus」のように見ます

クライアント側でページを読み込むとIDが変更されます。だからあなたはそれを解決するための2つのオプションがあります

  1. ブラウザで、ソースの表示または要素の検査を選択してソースコードに移動し、ソースで新しいIDを見つけて、jQueryでそのIDを使用します(この方法はお勧めしません)

  2. サーバーIDとクライアントIDに自分で変換するダイナミックセレクターと呼ばれるものを使用します

$('DropdownCheck [ID $ = "ddcStatus"]')

これは、「IDがddStatusで終わるDropdownCheckで選択する」と読むことができます。

あなたの解決策は同じではありませんDropdownCheckをクライアント側で使用される実際のコントロールに置き換えてください jqueryのスタイルで開始および終了するためのいくつかのヘルプ

http://api.jquery.com/attribute-ends-with-selector/ http://api.jquery.com/attribute-starts-with-selector/#attributevalue

于 2012-09-14T05:08:05.447 に答える
0

そのようなことをしてみてください:

$(function(){
    $("#ddcStatus").click(function () {
        //$('#ddcStatus').attr("Title",'Items Selected');
        //document.getElementById("ddcStatus").Title = 'Items Selected';
    });
})
于 2012-09-14T04:56:50.643 に答える