.each或搜索功能,我该如何使用它们?

时间:2010-05-08 22:24:27

标签: javascript jquery string match each

我有一个ul列表,有10个项目,我有一个标签显示所选的li文本。

当我点击一个按钮时,我需要检查标签,而不是所有列表项找到匹配的标签,当它发现我需要分配相应的数字时。

列表: 梅西 克里斯蒂亚诺 兹拉坦

列表项的隐藏值: www.messi.com www.cronaldo.com www.ibra.com

标签: 兹拉坦

脚本(思考)procces: 获取标签文本,匹配字符串的搜索列表,获取该字符串的值。

(如果有人能指出我学习这些基本(?)的东西。

试图尽可能具体,谢谢你们!

编辑: 真的很抱歉不清楚。

li都是动态获取类(.listitem)。 链接可以存储在数组或隐藏字段(或隐藏的其他ul) 链接在哪里并不重要..

  

$('。listitem')。click(function(){
      $( “#elname”)文本($(本)的.text());
      $(“#such”)。attr(“href”,$(this).attr('value'));
  });

我正在尝试用李的价值观,但我意识到李的价值不可能......

再次感谢!

2 个答案:

答案 0 :(得分:2)

<ul>
    <li title="www.messi.com">
        Messi 
    </li>
    <li title="www.cronaldo.com">
        Cristiano
    </li>
    <li title="www.ibra.com">
        Zlatan
    </li>
</ul>
<label id="selected"></label>
<br />
<br />
<input type="button" id="button" value="click" />

<script type="text/javascript">
    $(document).ready(function() {
        $("li").each(function(i) {
            $(this).click(function() {
                $("label").html($(this).html());
            });
        });

        $("#button").click(function() {
            alert($("li:contains(" + $("label").html() +")").attr("title"));
        });
    });
</script>

我将隐藏字段值存储在li元素的标题中以简化我的工作

答案 1 :(得分:1)

我认为这应该有效:

var label = "Zlatan";
var url = ul.find("li")
    .filter(function(){return $(this).text() == label})
    .find("input[type=hidden]")
    .val();

(这里我猜你的意思是隐藏输入字段,因为li不能有隐藏值)。