1

私のjspページには、次のように2つのdivとデフォルト値を持つテキストボックスがあります

<input type="text" value="somevalue"  id="box"/>
<div id="first" style="display:none"></div>

<div id="second"></div>

スクリプトタグで私は次のように書いています

<script>
$(document).ready(function()
{
    if($("#box").val()=='somevalue')
    {
        $('first').show();
        $('second').hide();
    }
});
</script>

上記のコードは正常に実行されています..しかし、ページが読み込まれると、2番目のdivが1秒間来て、最初のdivに切り替わります..そして、その切り替えが表示されないようにします..

4

5 に答える 5

0

このようになるはずです。IDセレクターがありません。セレクターの「#」

$('#first').show();
$('#second').hide();
于 2013-01-31T09:22:52.437 に答える
0

HTML で、すべての div を非表示に変更します。

<input type="text" value="somevalue"  id="box"/>
<div id="first" style="display:none"></div>

<div id="second" style="display:none"></div>

そして、あなたのJQueryで。

$(document).ready(function()
{
      // show only the boxes based on your conditions. This is just an example.
    if($("#box").val()=='somevalue')
    {
        $('#first').show();
    }
    else
    {
        $('#second').show();
    }
});
于 2013-01-31T09:26:27.137 に答える
0

style="display:none" を両方の div に設定し、値に従って div を表示できます。

<input type="text" value="somevalue"  id="box"/>
<div id="first" style="display:none"></div> 
<div id="second" style="display:none"></div>


<script>
$(document).ready(function()
{
    if($("#box").val()=='somevalue') { $('#first').show(); }
    else  { $('#second').show(); }
});
</script>
于 2013-01-31T09:28:12.330 に答える
0
$("#first,#second").css("display", "none");
($("#box").val() == 'somevalue' ? $('#first').show(); : $('#second').show();)
于 2013-01-31T09:30:17.023 に答える
0

あなたはそれがJSPページにあると言ったので、サーバー側に条件付きロジックを入れ<div>て、ブラウザーに到達する前に2つの要素のどちらを非表示にするかを決定できます. これを解決するために jQuery を使用する理由はまったくありません。そうすることは (私の意見では) 間違ったアプローチです。

JSTL コアタグ ライブラリを使用していると仮定します。

<c:set var="yourValue" value="somevalue"/>
<input type="text" value="somevalue"  id="box"/>
<div id="first" <c:if test="${yourValue != 'somevalue'}">style="display:none"</c:if>></div>

<div id="second" <c:if test="${yourValue == 'somevalue'}">style="display:none"</c:if>></div>
于 2013-01-31T09:30:28.650 に答える