1

我在 jQuery Vector Map 中工作,我必须在 UL li 标签中添加用户选择的区域名称。我这样做是因为,每当用户单击矢量图区域时,相应的区域值都会在 li 标签中更新。

现在我必须做条件,

如果用户选择的区域值已经存在于 li 列表项中。我必须显示警报('用户选择的区域已经在列表中');

如果用户选择的区域值不在 li 项中,我必须将区域值添加到 li 项中。

这里的示例代码 - (用户选择的区域状态值我在“区域”中获得)

   var regionList = new Array('Alaska','Alabama','Arkansas','Arizona', etc....) /* sample array*/


   if( li item text value  == arrayvalue) /*exact condition statement I want*/
   {
       alert("user selected region already in the list")

   }
    else
   {
          $('<li>' + region + '</li>').appendTo('ul#location-selected');
   } 


   <ul id="location-selected" style="font-weight:bold;width:350px;padding-top:15px;color:red;"></ul>

请帮我完成这个..

4

1 回答 1

1
var ul = document.getElementById('location-selected');
var lis = ul.getElementsByTagName('li');

for(var i = 0; i < lis.length; i++){
    if(lis[i].innerHTML === region) {
        isInList = true;
        break;
    }
}

if(isInList)
    alert("user selected region already in the list")
else {
    var newli = document.createElement('li');
    newli.innerHTML = region;
    ul.appendChild(newli);
}

jQuery:

var ul = $('#location-selected');
var lis = ul.children('li');

var isInList = false;
for(var i = 0; i < lis.length; i++){
    if(lis[i].innerHTML === region) {
        isInList = true;
        break;
    }
}

if(isInList)
    alert("user selected region already in the list")
else
    var newli = $('<li></li>').html(region).appendTo(ul);
于 2013-03-07T19:15:22.223 回答