2012-03-13 24 views
1

我檢索/ jQuery的AJAX獲取內容,頁面上顯示出來,並且試圖從以下跨度文本與3類名:jQuery的 - 無法從跨度文本與3類名

<span class="price eur priceData">198,91 €</span> 

如何從該範圍內獲得數字「198,91」?

我用下面的代碼來檢索文本(不工作):你要求更多的代碼

$("span.price.eur.priceData").text(); 

,那就是:

$(document).ready(function() { 
       Read(); 
      }); 

      function Read() { 
       $.ajax({ 
        url: "index.php?action=getData", 
        cache: false, 
        success: function(html){ 
         if(html == "BAD") { 
          $("#my_results").empty().append("Failed!"); 
         } else { 
          $("#my_results").empty().append("Successful!"); 
          $("#page_content").empty().append('<xmp>'+html+'</xmp>'); 
          var text=$("span.price.eur.priceData").text(); 
          alert(text); 
         } 
        } 
       }); 
      } 

我我甚至試圖使用SetTimeout()和Delay(),但仍然無法工作。

解決方案:(感謝暗影精靈)

$(html).find("span.price.eur.priceData").text(); 
+1

u得到什麼輸出? – Gopesh 2012-03-13 08:46:43

+1

[JS Fiddle說你可以](http://jsfiddle.net/davidThomas/g7xhA/)。你的代碼中的任何拼寫錯誤(類名稱在'class'屬性或jQuery選擇器中)? – 2012-03-13 08:47:18

+3

代碼應該可以工作。或者至少它應該得到數字加歐元符號。你認爲你可以用jsFiddle創建一個可重現的案例嗎? – Sheepy 2012-03-13 08:47:22

回答

2

你的代碼失敗。

您可以使用原始的內容是這樣的:

$("#my_results").empty().append("Successful!"); 
$("#page_content").empty().append('<xmp>'+html+'</xmp>'); 
var text = $(html).find("span.price.eur.priceData").text(); 
alert(text); 
+0

非常漂亮。 +1 – fehays 2012-03-13 09:29:35

+0

工程就像一個魅力。謝謝! – Eric 2012-03-13 09:32:40

+0

@Erik Cheers,如果這完全解決了這個問題,請勾選左側空的V圖標標記爲已接受。 :) – 2012-03-13 09:39:30

0

以.html嘗試()

alert($("span.price.eur.priceData").html());​ 
+4

應該沒有任何區別。 (編碼解碼的東西除外) – gdoron 2012-03-13 08:52:13

0

使用任何一個類名....
我已經使用價格..所以代碼如下:

$('.price').html(); 

    **or** 

    $('span.price').html(); 
+1

閱讀本頁其他人的意見,你有**所有**的錯誤混合... – gdoron 2012-03-13 08:58:08

3

這是一個黑暗的鏡頭,因爲你沒有提供更多的代碼。

如果您通過ajax檢索數據,請確保您的$("span.price.eur.priceData").text();位於您的ajax成功回調中。

否則,該<span/>元素可能尚未填充數據。

+0

這裏唯一的真實答案...! ** + 1 ** – gdoron 2012-03-13 09:02:40

1

希望你需要得到沒有'€'符號的實際值。 檢查這個

$(document).ready(function() { 
    var text=$("span.price.eur.priceData").text(); 
    var text1=text.split('€')[0]; 
    alert(text1); 

}); 

檢查,因爲你<xmp>標籤包裝的HTML內容,使它們爲純文本因此jQuery的不能發現有什麼元素這個小提琴http://jsfiddle.net/Z5AKU/