Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从嵌套在li元素中的锚元素中获取值_Javascript_Jquery - Fatal编程技术网

Javascript 如何从嵌套在li元素中的锚元素中获取值

Javascript 如何从嵌套在li元素中的锚元素中获取值,javascript,jquery,Javascript,Jquery,我有这个ullihtml元素: <ul id="langMenu" class="top-links list-inline"> <li> <a class="dropdown-toggle no-text-underline" data-toggle="dropdown" href="#"><img class="flag-lang" src="~

我有这个
ulli
html元素:

 <ul id="langMenu" class="top-links list-inline">
                        <li>
                            <a class="dropdown-toggle no-text-underline" data-toggle="dropdown" href="#"><img class="flag-lang" src="~/assets/images/flags/no.png" width="16" height="11" alt="lang" />NORSK</a>
                            <ul class="dropdown-langs dropdown-menu">
                                <li><a value="no" tabindex="-1"><img class="flag-lang" src="~/assets/images/flags/no.png" width="16" height="11" alt="lang" />NORSK</a></li>
                                <li class="divider"></li>
                                <li><a value="us" tabindex="-1"><img class="flag-lang" src="/assets/images/flags/us.png" width="16" height="11" alt="lang" /> ENGLISH</a></li>
                                <li><a value="de" tabindex="-1"><img class="flag-lang" src="/assets/images/flags/de.png" width="16" height="11" alt="lang" /> GERMAN</a></li>

                            </ul>
                        </li>
                    </ul>
    • 诺斯克
    • 英式
    • 德文
当我实现选择时,我需要给出所选元素的值

例如:

如果用户选择英语,我需要从anchor获取en值。 如果用户选择了Norsk,我需要从anchor获取no


如何使用jquery从嵌套在li元素中的锚元素中获取值

据我所知,你可以这样做:

$('a').click(function(event){
console.log($this).attr('value');
event.preventDefault();
});

此代码将获取
链接的值,但仅在
菜单内的链接上
嵌套
ul li

$('langMenu ul li')。单击(函数(){
console.log($(this.find('a').attr(“value”))
})

    • 诺斯克
    • 英语
    • 德文

您可以为
  • 元素添加单击事件侦听器,并搜索子锚元素
    
    data-*属性使我们能够在所有HTML元素上嵌入自定义数据属性

    JQuery具有检索数据值的特定方法

      var value = $(this).children('a').data('value');
    

    哪个调度事件?
    属性对
    无效。改用
    数据值
      var value = $(this).children('a').data('value');