Поиск контента и оповещение, если - PullRequest
0 голосов
/ 17 июля 2011

Я сделал поисковый скрипт, который ищет "Hallow" и оповещения.

var Item = $('td > a:contains("Hallow")').text()
if(Item) {
alert(Item); }

Этот javascript работает для этого HTML:

<html><body><div style="Padding:10px;">

            <table width="469" cellspacing="0" cellpadding="2" border="0">

                        <tbody>
                 <tr valign="top">
                        <td width="313">&nbsp;<img width="11" height="10" src="graphics/Default/Miscellaneous/weight.gif" alt="Yük: 3" title="Yük: 3">&nbsp;

                        <a href="CharacterDetails.asp?action=ViewItemDetails&amp;ItemTypeiD=236&amp;ItemID=100084253&amp;CharacterID=53845">Kovboy çizmeleri</a>                                                                                                                              </td>
                    <td width="140" align="right">  </td>
                </tr>



                    <tr valign="top">
                        <td width="313">&nbsp;<img width="11" height="10" src="graphics/Default/Miscellaneous/weight.gif" alt="Yük: 5" title="Yük: 5">&nbsp;

                        <a href="CharacterDetails.asp?action=ViewItemDetails&amp;ItemTypeiD=168&amp;ItemID=68615745&amp;CharacterID=53845">Halloween Canavar Maskesi</a>


                      </td>
                    <td width="140" align="right">

                    </td>
                </tr>



           </tbody></table>
              <table width="469" cellspacing="0" cellpadding="3" border="0">
                </table>


  <br>
  <br>
  </div></body></html>

Но иногда предмет охраняется. И HTML выглядит так:

     <html><body><div style="Padding:10px;">

                <table width="469" cellspacing="0" cellpadding="2" border="0">

                            <tbody>

                        <tr valign="top">
                            <td width="313">&nbsp;<img width="11" height="10" src="graphics/Default/Miscellaneous/weight.gif" alt="Yük: 3" title="Yük: 3">&nbsp;

                            <a href="CharacterDetails.asp?action=ViewItemDetails&amp;ItemTypeiD=236&amp;ItemID=100084253&amp;CharacterID=53845">Kovboy çizmeleri</a>                                                                                                                              </td>
                        <td width="140" align="right">  </td>
                    </tr>



                        <tr valign="top">
                            <td width="313">&nbsp;<img width="11" height="10" src="graphics/Default/Miscellaneous/weight.gif" alt="Yük: 5" title="Yük: 5">&nbsp;

                            <a href="CharacterDetails.asp?action=ViewItemDetails&amp;ItemTypeiD=168&amp;ItemID=68615745&amp;CharacterID=53845">Halloween Canavar Maskesi</a>


                          </td>
                        <td width="140" align="right">
Secured
</td>
                    </tr>

                    </tbody></table>
                  <table width="469" cellspacing="0" cellpadding="3" border="0">
                    </table>


      <br>
      <br>
      </div></body></html>

Я не хочу, чтобы мой javascript предупреждал меня, если элемент защищен.

Функция должна быть такой

var Item = $('td > a:contains("Hallow")').text()
var Itemsecured = (A code)
if(Itemsecured) {
}
else {
alert(Item)
}

Мне нужна правильная версия этого кода.

И это важно: у меня есть два предмета, один защищен, другой нет. Javascript должен предупредить меня.

Ответы [ 2 ]

1 голос
/ 17 июля 2011

Не храните семантическую информацию в брате;добавить класс.

var Contents = $('td:not(".secured") a:contains("Hallow")').text()
if( Contents ) alert( Contents )
0 голосов
/ 17 июля 2011
$('td > a:contains("Hallow")').each(function(){
    if($(this).parent().next('td').text() == 'Secured') {
      // actions for secured item
    }
    else {
      alert($(this).text());
    }
});
...