0

次のマークアップを持つ隠しフィールドがあります。

<input type="hidden" name="ctl00$ContentPlaceHolder1$LinksOverview1$ProductView$ctrl1$ctl01$ctl00$DescriptionOfLink$QuestionDivInfo" id="ContentPlaceHolder1_LinksOverview1_ProductView_ctrl1_ctl00_3_DescriptionOfLink_3_QuestionDivInfo_3" value="ContentPlaceHolder1_LinksOverview1_ProductView_ctrl1_ctl00_3_questionMark_3" />

私の非表示フィールドの値は、私が持っているスパンの ID と同じです:

<span id="ContentPlaceHolder1_LinksOverview1_ProductView_ctrl1_ctl00_3_questionMark_3" class="questionMarkLayout">(?)</span>

コードがレンダリングされる前にスパンの ID はわかりませんが、非表示フィールドの値にアクセスできます。

jQuery を使用して、次のことを行います。

  • 隠しフィールドの値の ID を使用して、コントロールをつかみます

これまでのところ、私は試しました:

<script type="text/javascript">
    $(document).ready(function () {
        alert('<%#QuestionDivInfo.ClientID %>');
        $('<%#QuestionDivInfo.ClientID %>').val().mouseover(function (e) {
            $('<%#HintDiv.ClientID %>').show();
        });

        $('<%#QuestionDivInfo.ClientID %>').val().mouseleave(function (e) {
            $('<%#HintDiv.ClientID %>').hide();
        });
    });
</script>

しかし、うまくいきません。

ヒントはありますか?:)

4

3 に答える 3

2

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

$(document).ready(function () {
        alert('<%#QuestionDivInfo.ClientID %>');
        var span=$("#"+$('<%#QuestionDivInfo.ClientID %>').val());
        $(span).mouseover(function (e) {
            $('<%#HintDiv.ClientID %>').show();
        });

        $(span).mouseleave(function (e) {
            $('<%#HintDiv.ClientID %>').hide();
        });
    });
于 2012-07-09T17:42:39.253 に答える
1

イベントは、コントロールの値ではなく、コントロールにバインドする必要があります。

$('<%#QuestionDivInfo.ClientID %>').val().mouseover(.........

する必要があります

$('#'+$('#<%QuestionDivInfo.ClientID %>').val()).mouseover(.........

あなたのコードは

 $(document).ready(function () {
        alert('<% QuestionDivInfo.ClientID %>');
        $('#'+ $('#<%QuestionDivInfo.ClientID %>').val()).mouseover(function (e) {
            $('#<%HintDiv.ClientID %>').show();
        });

        $('#'+$('<%#QuestionDivInfo.ClientID %>').val()).mouseleave(function (e) {
            $('#<%HintDiv.ClientID %>').hide();
        });
    });
于 2012-07-09T17:40:29.160 に答える
0
 <script type="text/javascript">

        $(document).ready(function () {

            var hiddenFieldValue = $('input[id$=QuestionDivInfo_3]').attr('value');
            alert(hiddenFieldValue);
            var spanValue = $('span[id$=' + hiddenFieldValue + ']').html();
            alert(spanValue);
        });

    </script>

これを試してください....それは私のために働いた

于 2012-07-09T19:10:34.950 に答える