1

NET イントラネット Web サイト。Site.Master ページと .aspx ページで、通常の ASP ネット Web フォーム。写真でわかるように、これらのチェックボックスがあります。AJAX のように、ポストバックを行わずにクリックすると背景色を緑に変更するために、JavaScript を使用しています。

ここに画像の説明を入力

私のコードでは、それは唯一の問題であり、チェックの周りのボックスだけが私のコードの影響を受けます.Like hereを見ることができます.

ここに画像の説明を入力

しかし、aspxページにBackColor = "Lime"プロパティを追加しているとしましょう。すべてが完璧ですが、もちろんスクリプトは機能しません。

ここに画像の説明を入力

私のaspコードは次のとおりです。

    <asp:Table CssClass="GroupKPI" runat="server" GridLines="Horizontal">
            <asp:TableRow runat="server">
                <asp:TableCell runat="server">
                    <%-- Critère de recherche WP--%>
                    <asp:CheckBox ID="labelList_WP" runat="server" Text="WP" CssClass="labelTitle" AutoPostBack="False" BackColor="Lime" />
                    <asp:Panel ID="Panel1" runat="server" CssClass="Panel">
                        <asp:CheckBoxList ID="List_WP" runat="server" CssClass="CBList">
                        </asp:CheckBoxList>
                    </asp:Panel>
                </asp:TableCell>
                <asp:TableCell ID="TableCell13" runat="server" CssClass="CellSeparator" Width="5px"></asp:TableCell>
                <asp:TableCell ID="TableCell5" runat="server">
                    <%-- Critère de recherche WP CF--%>
                    <asp:CheckBox ID="labelList_WP_CF" runat="server" Text="WP CF" CssClass="labelTitle"
                        OnCheckedChanged="Check_Clicked" AutoPostBack="False" />
                    <asp:Panel ID="Panel2" runat="server" CssClass="Panel">
                        <asp:CheckBoxList ID="List_WP_CF" runat="server" CssClass="CBList">
                        </asp:CheckBoxList>
                    </asp:Panel>
                </asp:TableCell>
                <asp:TableCell ID="TableCell14" runat="server" CssClass="CellSeparator" Width="5px"></asp:TableCell>
                <asp:TableCell ID="TableCell6" runat="server">
                    <%-- Critère de recherche SUBWP--%>
                    <asp:CheckBox ID="labelList_SUBWP" runat="server" Text="SUBWP" CssClass="labelTitle"
                        OnCheckedChanged="Check_Clicked" AutoPostBack="False" />
                    <asp:Panel ID="Panel3" runat="server" CssClass="Panel">
                        <asp:CheckBoxList ID="List_SUBWP" runat="server" CssClass="CBList">
                        </asp:CheckBoxList>
                    </asp:Panel>
                </asp:TableCell>
                <asp:TableCell ID="TableCell15" runat="server" CssClass="CellSeparator" Width="5px"></asp:TableCell>
                <asp:TableCell ID="TableCell7" runat="server">
                    <%-- Critère de recherche WP REGROUPEMENT--%>
                    <asp:CheckBox ID="labelList_WP_REGROU" runat="server" Text="WP REGROU" CssClass="labelTitle"
                        OnCheckedChanged="Check_Clicked" AutoPostBack="False" />
                    <asp:Panel ID="Panel4" runat="server" CssClass="Panel">
                        <asp:CheckBoxList ID="List_WP_REGROU" runat="server" CssClass="CBList">
                        </asp:CheckBoxList>
                    </asp:Panel>
                </asp:TableCell>
                <asp:TableCell ID="TableCell16" runat="server" CssClass="CellSeparator" Width="5px"></asp:TableCell>
                <asp:TableCell ID="TableCell8" runat="server">
                    <%-- Critère de recherche ORGANISATION--%>
                    <asp:CheckBox ID="labelList_ORGANISATION" runat="server" Text="Organisation" CssClass="labelTitle"
                        OnCheckedChanged="Check_Clicked" AutoPostBack="False" />
                    <asp:Panel ID="Panel5" runat="server" CssClass="Panel">
                        <asp:CheckBoxList ID="List_ORGANISATION" runat="server" CssClass="CBList">
                        </asp:CheckBoxList>
                    </asp:Panel>
                </asp:TableCell>
            </asp:TableRow>
        </asp:Table>
        <%-- Fin de la table KPI RANGÉ 1--%>

そして、ページロードに配置されたコードの背後にある私の vb は次のとおりです。

     labelList_WP.Attributes.Add("onclick", "var checkbox=document.getElementById('" & Me.labelList_WP.ClientID & "'); if (checkbox.checked) {checkbox.style.background = '#9ACD32'; } else {checkbox.style.background = '#F3F6FA';}  ")

私はcheckbox.style.background、checkbox.style.backgroundColor、checkbox.style.background-color、checkbox.style.BackColorを試したことに注意してください。

また、チェックボックスで成功しなかったこのようなものも使用しようとしたことに注意してください。

    labelList_WP.Attributes.Add("onlick", "if ($(""#labelList_WP"").hasClass(""labelTitleChecked"")==true) { $(""#labelList_WP"").removeClass(""labelTitleChecked""); }  else {$(""#labelList_WP"").addClass(""labelTitleChecked"");}")

どんな助けでも大歓迎です、私はこれで一日中失ってしまいました..コマンドデバッガーも。私の試みのいずれかで、デバッグモードがポップされることはありません。

4

1 に答える 1

1

これを試して:

labelList_WP.Attributes.Add("onclick", "$(""#labelList_WP"").parent().toggleClass(""labelTitleChecked"");")

checkbox.style.backgroundまたは、 setを設定する代わりに元のコードでcheckbox.parentElement.style.background

于 2013-09-25T22:58:34.903 に答える