0

繰り返しますが、Jquery で問題が発生しています (私はそれが上手になってきています!)、それを取得しようとしているので、「」タブの選択したオプションを変更すると、関連する入力が表示されます。選択したオプションに移動し、他のすべてを非表示にします。

これは私がこれまでに得たものです。

    <script type='text/javascript'>
$(document).ready(
    function()
    {
      $('select').prop("selectedIndex", -1);
      var showSomeClass = $('#placeholder_type').val();
      $('#changling').children().addClass('hidden');
      if($('#changling').children().attr('id') == showSomeClass)
      {
          $(this).removeClass('hidden');
      }
      else
      {
          $(this).addClass('hidden');
      }
    });
</script>

しかし、それは私が望む方法でも正確に機能しているとは言えません...おそらく、JavascriptではなくPHPのようにこれに取り組んでいるという事実と関係があると思います。

4

1 に答える 1

0

.change()イベントを<select>要素にバインドできます。次に例を示します。

$(document).ready(function() {
    // Hide all #changling children onload
    $('#changling > input').addClass('hidden');

    // Bind change event to <select> element
    $('#placeholder_type').change(function() {

        // Hide everything first
        $('#changling > input').addClass('hidden');

        // And then decide which one to display
        var opt = $('#placeholder_type option:selected').val();
        $('#changling').children('#' + opt).removeClass('hidden');
    });
});

注:選択オプションが実際に関連する入力フィールドを表示していることを確認できるように、「星」および「船」入力フィールドにプレースホルダー属性を追加しました:)

ここで更新されたフィドルを参照してください - http://jsfiddle.net/teddyrised/dFhz5/3/

于 2013-09-22T18:11:29.667 に答える