在jquery选择器中使用变量

时间:2013-01-29 22:25:22

标签: jquery

我无法让下面的代码工作我没有收到任何错误。我需要的是当#equipmentList1更改它时会显示与所选内容对应的下拉列表。然后,根据后面下拉列表的选择,它应该只将选定的下拉列表的值写入equipmentList2 DIV。 selectedVisibleValue1包含选择第一个下拉列表后出现的字段的ID我尝试将其传递给第二个函数以使用innerHTML写入它但它的行为就像它没有接收变量因为没有任何反应。也许我的代码中的其他地方有错误。我是jQuery的新手,所以如果有人可以看看,让我知道什么是错的,那将是非常棒的。

$(document).ready(function () {
  $('#equipmentList1').bind('change', function () {
    var elements = $('div.equipmentList2').children().hide(); // hide all the elements
    var value = $(this).val();    

    if (value.length) { // if somethings' selected
      elements.filter('.' + value).show(); // show the ones we want
      var selectedVisibleValue1 = $(".equipmentList2 select:visible").attr("id");
    }
  }).trigger('change');
});   

$(document).ready(function () {
  $("#" + selectedVisibleValue1).bind('change', function () {
    var value = $(this).val();  

    if (value.length) {
      var equipment = document.getElementById("equipmentList1").value;
      document.getElementById('equipmentList2').innerHTML = selectedVisibleValue1;
    }
  }).trigger('change');
});

1 个答案:

答案 0 :(得分:1)

您不需要两个$(document).ready(...)函数,只需要一个函数,将所有代码放在其中一个函数中。 我不确定这是问题的原因,但是很有可能。