3

ドロップダウンリストから特定の値を選択した場合、またはユーザーがドロップダウンリストから値を選択しなかった場合は、チェックボックスをオフにする必要があります。現在、Jqueryを使用しています。これは現在使用しているコードですが、機能しません。

脚本

<script src="js/jquery-1.8.3.js"></script>
<script>
function sdp4(str) {
       if (  
   $('#drop1').val()!= '' 
|| $('#drop1').val()== "In Process"
|| $('#drop1').val()== "KIV" )

{$('#checkbox1').prop('checked', false);} 
else 
{$('#checkbox1').prop('checked', true);}
</script>

HTML

<select class="form-dropdown"  id="drop1" name="drop1" onchange="sdp4">
        <option value=""> </option>
        <option value="In Process"> In Process </option>
        <option value="KIV"> KIV </option>
        <option value="Completed"> Completed </option>
        </select>  
<input type="checkbox" checked="checked" id="checkbox1" name="checkbox1" />
4

3 に答える 3

2

チェックボックスをオンにするのは、[完了]が選択されているときだけであると想定します。

 $("#drop1").on('change', function () {
    var val = $(this).val();
    if (val === " " || val === "In Process" || val === "KIV") {
        $('#checkbox1').prop('checked', false);
        return;
    }
    $('#checkbox1').prop('checked', true);
});

およびhtml:

<select class="form-dropdown" id="drop1" name="drop1">
    <option value=" "></option>
    <option value="In Process">In Process</option>
    <option value="KIV">KIV</option>
    <option value="Completed">Completed</option>
</select>
<input type="checkbox"  id="checkbox1" name="checkbox1"/>

これがフィドルです

于 2013-02-05T02:55:11.590 に答える
0

sdp4実際に呼び出しを何かにバインドする必要があります。

$("#drop1").on('change', sdp4);

その時点で、 を使用#drop1できるときにセレクターで使用することも冗長になりますthis

于 2013-02-05T02:34:33.733 に答える
0

これを試してください:http://jsfiddle.net/7cqDB/

function sdp4(str) {
  if (str == '' || str == "In Process" || str == "KIV") {
      $('#checkbox1').prop('checked', false);
  } else {
      $('#checkbox1').prop('checked', true);
  }
}

$(function () {
   $('select').on('change', function () {
       var str = $(this).val();
       sdp4(str);
   });
});
于 2013-02-05T02:59:24.907 に答える