14

こんにちは、複数の JavaScript を実行し、AND ステートメントを使用しようとしています。ユーザーが value="1986" を持つオプションをクリックし、value="3" を持つ他のオプションをクリックすると、いくつかのテキストが表示されます。if 文で AND 文を使用しましたが、うまくいきません。これが私のコードです:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script></script>
    <script type="text/javascript">
$(document).ready(function() {

    $('#main').on('change', '.select-box', function() {

        if ($(".select-box option[value='3']").attr('selected') & $(".select-box option[value='1986']").attr('selected')) {

            $('#demo').html("Hello World");

        }



    });

});
    </script>
<script type="text/javascript">

var x="",i;
for(i=1986;i<2013;i++)
{
x=x + "<option value='"+i+"'> " + i + "</option>";
}
$(document).ready(function() {
document.getElementById("demo2").innerHTML="<select class='select-box'>"+x+"</select>";
});
</script>


</head>
<body>  
    <p id="demo2"></p>
    <div id="main">
<select class="select-box">
      <option value="0">alert</option>
      <option value="1">alert to</option>
      <option value="2">no alert</option>
      <option value="3">best alert</option>
    </select> 
<p><br/>
    <div id="demo"></div>

    </div>


    </body>
4

3 に答える 3

15

AND ステートメントを使用するには、 にする必要があります&&

したがって、ifステートメントでは、次のようにする必要があります

if ($(".select-box option[value='3']").attr('selected') && $(".select-box option[value='1986']").attr('selected')) {
            $('#demo').html("Hello World");
}

ブール論理の詳細については、こちらをご覧ください。

于 2012-09-11T07:31:14.927 に答える
12

使用する必要があります&&

if ($(".select-box option[value='3']").attr('selected') && $(".select-box option[value='1986']").attr('selected'))
________________________________________________________^

論理演算子:

&& = and
|| = or
!  = not

最初からselectクラスを変更する必要がありますselect。そうしないと、両方を取得できません。

于 2012-09-11T07:30:56.950 に答える