0

2つの選択リストがあります。最初の選択リストから選択されたものに応じて、jqueryで選択オプションを削除または無効にします。

<select name="booking" id="booking">
  <option value="3">Group Bookings</option>
  <option value="2" selected="selected">Port Phillip Bay Snapper Charters</option>
  <option value="6">Portland Tuna Fishing</option>
  <option value="1">Sport Fishing</option>
</select>

2番目のリストは次のとおりです(これには2つの値しかありません)。

<select name="charterType" id="charterType">
  <option value="1">Individual Booking</option>
  <option value="2">Group Booking</option>
</select>

グループ予約またはポートフィリップベイスナッパーチャーターを選択した場合、「グループ予約」のみを表示する必要があります。(基本的に「個別予約」を非表示にするため)でも、うまくいかないようです。誰かが私を助けてくれたら、それは素晴らしいことです!:)

私もスイッチを使ってみましたが、それもうまくいきません。

/* select list */
  switch (jQuery('#booking :selected').text()) {
    case 'Sport Fishing':
      alert('AA');
    break;
    case 'Port Phillip Bay Snapper Charters':
      jQuery("#charterType option[value=1]").remove();
      alert('BB');
    break;
    case 'Portland Tuna Fishing':
      alert('CC');
    break;
    case 'Group Bookings':
      alert('DD');
    break;
  };

警告しますが、他には何もしません。

4

2 に答える 2

2

使用できます

jQuery('#booking').val()選択した値を取得します。

ここでサンプルを見ることができます。

于 2010-03-15T05:26:28.267 に答える
2

これはあなたが必要なことをします

<select name="booking" id="booking">
  <option value="3">Group Bookings</option>
  <option value="2" selected="selected">Port Phillip Bay Snapper Charters</option>
  <option value="6">Portland Tuna Fishing</option>
  <option value="1">Sport Fishing</option>
</select>

<select name="charterType" id="charterType">
  <option value="1">Individual Booking</option>
  <option value="2">Group Booking</option>
</select> 

javascript

$("#booking").change(function(){
  $("#charterType").empty();
  if ( $(this).val() != "3" &&   $(this).val() != "2" ){
    $("#charterType").append ( $('<option>').text("Individual  Booking").val("1") );
  }

  $("#charterType").append ( $('<option>').text("Group Booking").val("2") );

});

参照: http: //jsbin.com/ayato

于 2010-03-15T05:49:13.717 に答える