簡體   English   中英

jQuery/NodeJS:獲取沒有唯一 class 名稱的按鈕的 URL

[英]jQuery/NodeJS: Getting URL of a button without unique class name

所以我試圖在我通過NodeJS解析的網站上獲取某個按鈕的鏈接:

通常,使用cheerio 會相當容易:

$('.panel-default').find('.btn-default').attr('href');

問題是:有 3 個其他按鈕具有相同的類名,總共 60 個項目:

<a href="https://someurl.com" class="btn btn-xs btn-default" target="_blank"><span class="fa fa-fw fa-steam-square poptip" data-toggle="tooltip" title="" data-original-title="View Details"></span></a>

<a href="/somedir" class="btn btn-xs btn-default"><span class="fa fa-road fa-fw poptip" data-toggle="tooltip" title="" data-original-title="See more like this"></span></a>

<a href="/otherdir" class="btn btn-xs btn-default" target="_blank"><span class="fa fa-link fa-fw poptip" data-toggle="tooltip" title="" data-original-title="View shareable link"></span></a>

因此,使用.each 循環遍歷 4 個結果,選擇正確的一個,然后在所有 60 個其他項目上重復這一點,這對我來說似乎不是一個優雅的選擇。

有沒有其他方法可以獲取想要的信息,例如通過cheerio 調用獨特的數據原始標題“Inspect in game”(這甚至可能嗎?)? 或者如何以優雅而流暢的方式解決這個問題?

如果$('.panel-default').find('.btn-default')返回一個以上的值,你可以通過 index 來獲取她的 href 屬性。

如果你想要第二個元素 href 的例子:

$('.panel-default').find('.btn-default')[1].attr('href');

使用data選擇器。

$('.panel-default').find(".btn-default[data-original-title='Microsoft']").attr('href');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM