1

私はjQuery Vector Mapで作業しています。ユーザーが選択したリージョン名をUL 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 に答える