2015-02-24 21 views
1

我正在嘗試從包含文本的AJAX加載元素的末尾截斷(截斷)多餘字符。下面是我如何加載元素:如何切斷加載AJAX的文本的結尾?

$("#destinationElement").load("/sourcePageName .classWithinPage"); 

我想限制#destinationElement內的文本140個字符的長度,但內.classWithinPage文本可能會更長,所以我需要剪以某種方式在那之後關閉。如果可能,我還想在後面添加一個省略號。

我試着添加一個函數,然後做這個(看下面的內容),但它似乎沒有工作,我寧願它在文本被添加到#destinationElement之前運行,以便腳本會做它的在文本顯示之前工作。

var maxLength = 140; 
function shorten(element) { 
    var text = $(element).text(); 
    if(text.length > maxLength){ 
    text = text.substring(0, maxLength); 
    var lastIndex = text.lastIndexOf(" "); 
    text = text.substring(0, lastIndex) + '...'; 
    } 
    $(element).text(text); 
}; 
shorten('#destinationElement'); 

^^那沒用。另外,我想我應該添加我的函數作爲我上面的jQuery加載函數的一部分,我只是不知道如何。

如何在屏幕上顯示140個字符之前截斷正在加載的文本?

回答

2

,而是如果要修改數據

$.get('/sourcePageName', function(data) { 
    var text = $('<div />', {html : data}).find('.classWithinPage').text(); 

    if (text.length > 140) { 
     text = text.slice(0, 140) + '...'; 
    } 

    $("#destinationElement").text(text); 
}); 
+0

這個偉大的工程使用$.get方法,謝謝! – angularPrism 2015-02-24 21:34:05