2011-07-21 55 views
3

var partnerId = $('.partnerId').html();jQuery的HTML()在iPad

上面的代碼就會從

<span id="_ctl0_ContentPlaceHolder1_lPartnerID" class="partnerId">1122</span></td>

上正確IE7和Firefox內部HTML。代碼在iPad上失敗。

alert(partnerId)在FireFox和IE7上正確返回「1122」。但是,在iPad上,我獲得了

<a href="tel:1122">1122</a>作爲我的返回值。

我該如何解決這個問題?

回答

5

就在我發佈之前,我想出瞭如何解決這個問題。其他人可能會從這個解決方案中受益,所以我無論如何發佈。這個問題是由於iPad電話號碼檢測。 iPad在一些HTML中包裝了它認爲是電話號碼的東西(你在上面看到的)。就我而言,我不需要或不需要電話號碼檢測。所以,我在母版頁頭卡住

<meta name = "format-detection" content = "telephone=no" />

。問題解決了。

3

你試過使用文本();

var partnerId = $('.partnerId').text(); 
2

我假設你只想數量:

$('.partnerId').text(); 
1

個聲音告訴我,你將不能夠克服這種在特定的DOM樹子。有關全局解決方案,請參閱P.Brian.Mackey的答案。 使用.text()是我認爲的最可靠和最有效的選擇。

事實上,在IE或FF上,如果您安裝了Skype插件並且該號碼看起來像電話號碼,則可能會得到相同的結果。