0

以下のように、div内に埋め込まれたGridViewコントロールがあります

<div id="parentDiv">
        Hello how r u
        <p>
            <asp:GridView ID="grdView" runat="server">
            </asp:GridView>
        </p>
    </div>

私が達成しようとしているのは、グリッドの親要素(「parentDiv」)を見つけて、背景色を緑に設定することです.私のコード(動作しません)

$(document).ready(function() {
    var parentElement = $('#grdView').parent("div");
    parentElement.css("background-color", "#ffaaaa");
});​
4

4 に答える 4

2

closest()GridView と比較して、次のメソッドを使用することをお勧めします。

var parentElement = $("#grdView").closest("#parentDiv");  // or $("#parentDiv")

GridView の親ノードは要素であるため、対応するdivよりも優れたものを取得します。parent()p


アップデート。背景をテキストのみに設定するには、個人spanまたはdivタグに配置する必要があります。

<div id="parentDiv">
    <span>Hello how r u</span>
    <p>
        <asp:GridView ID="grdView" runat="server">
        </asp:GridView>
    </p>
</div>

次に、次の JavaScript コードを使用します。

var parentElement = $("#grdView").closest("#parentDiv").children("span");
         // or just $("#parentDiv").children("span");
于 2012-06-04T11:41:40.900 に答える
0

grdViewの親はp要素なので、変更する必要があるかもしれません

 var parentElement = $('#grdView').closest("div");

詳細な参照: http://api.jquery.com/closest/

ここでもキャメルケース表記を使用します。

 .css("backgroundColor", "#ffaaaa");

p直接のテキストノードにのみ緑の背景を与える必要がある場合は、要素の背景色をオーバーライドするだけです

$('#parentDiv > p').css("backgroundColor", "<other color here>");
于 2012-06-04T11:40:42.000 に答える
0

私のコード(動作しません)-ソースにIDを参照するとidがグリッドビューではないためrunat="server"、ContentPlaceHolder1_grdViewまたはそのようなものになると思います

$(document).ready(function () {           

            var parentElement = $('#grdView').parent("div");
            parentElement.css("background-color", "#ffaaaa");


        });
于 2012-06-04T11:55:58.443 に答える
0

含まれている要素がグリッドに影響を与えずに色付けされているように見せるには、グリッドを背景と同じ色にする必要があります。

$("#grdView").css("backgroundColor",$("body").css("backgroundColor"));
$("#grdView").closest("div").css("backgroundColor","#ffaaaa");
于 2012-06-04T12:00:54.160 に答える