2010-04-06 69 views
1

我該如何將這個PHP函數包含在jquery.html中?jquery和PHP函數

PHP函數:

function trim_text($string, $limit, $break="<", $pad=" ...") 
{ 
$words = explode(' ', htmlentities(strip_tags($string))); 
$countr = count($words); 
if ($countr <= 8) 
{ 
return $string; 
}else{ 


// return with no change if string is shorter than $limit 
if(strlen($string) <= $limit) return $string; 
$string = substr($string, 0, $limit); 
if(false !== ($breakpoint = strpos($string, $break, $limit))) { 
if($breakpoint < strlen($string) - 1) { 

    $string = substr($string, 0, $breakpoint) . $pad; 
} 
} 
$last_space = strrpos(substr($string, 0, $limit), ' '); 
$string = substr($string, 0, $last_space); 
$string = strip_tags($string); 
return $string.$pad; 
} 
} 

和代碼Jquery的一部分,我想在名「.html」部分以某種方式調用這個函數是:

$(" .text").html('<div>'+ message +'</div>'); 

我想要做的是裝飾這個「消息」文本使用PHP函數。可能嗎?

+0

你可以做一個ajax調用,將消息作爲post參數傳遞給頁面,讓php解析並返回給你。一年後, – Ballsacian1 2010-04-06 10:41:19

回答

2

在您的JS中,將要修剪的文本發送到將進行修剪的腳本。服務器應發回修整的字符串,如:

var theText = $("#aTextarea").val(); 
$.post('trimscript.php', {text: theText}, function(response) { 
    $('.text').html('<div>' + response + '</div>'); 
}); 

在你的PHP,搶GET或POST變量,修剪它,並將它送回:

<?php 
if(isset($_POST['text']) && !empty($_POST['text'])) { 
    $text = trim_text($_POST['text']); 
    echo $text; 
} 
?> 

我認爲這說明流動需要什麼。當然,還有許多其他的方式來實現這一點,以上僅僅是一個簡單的例子。

1

很多php函數都在javascript中被重寫。你可以找到他們here

+0

,這個答案是有幫助的。非常酷的網站 – 2012-09-14 23:51:53

0

這將是好得多使用JavaScript來實現此功能。
如果此消息來自服務器,您可以在發送前修剪它