использование переменной jquery .attr

#jquery

#jquery

Вопрос:

Я пытаюсь получить следующую простую функцию для открытия divs с тем же именем захваченных атрибутов «name» в других divs, любая помощь будет оценена.

 <script type="text/javascript">
 $(document).ready(function(){
 $('.div').click(function(){
     var nip = (this).attr("name");
     $('#nip').show()
 })
    });

 </script>  
  

Комментарии:

1. чтобы уточнить, захваченный атрибут «name» соответствует «id» в других разделах, которые я хочу открыть

Ответ №1:

Используйте $(this).attr("name") вместо (this).attr("name") , чтобы получить имя. Затем используйте $('#' nip) для выбора нужного элемента.

Ваш текущий селектор не работает, потому что имя переменной содержится в кавычках, что приводит "nip" к буквальной интерпретации как "nip" .

 $(function() {
    $('.div').click(function() {
        var nip = $(this).attr('name');
        $('#'   nip).show();
    });
});
  

Ответ №2:

 <script type="text/javascript">
 $(document).ready(function(){
 $('.div').click(function(){
     var nip = ($this).attr("name");
     $('#'   nip).show();
 })
    });

 </script>
  

Вы также можете использовать

 <script type="text/javascript">
 $(document).ready(function(){
 $('.div').click(function(){
     var $nip = ($this).attr("name");
     $nip.show();
 })
    });
  </script>
  

Ответ №3:

Не на 100% то, что вы пытаетесь сделать, но попробуйте это:

 $("div").click(function(){
 var nip = "#"   $(this).attr("name");
 $(nip).show();
});
  

Кроме того, вам следует немного почистить свой код. Вы на самом деле вызываете класс с именем «div»? Не забудьте закрыть все правильно.