php生成的文本跨度

时间:2013-05-19 20:33:21

标签: php javascript jquery html

我有函数(PHP)生成一些文本,比方说:

function A()
{
    echo 'test';
}

接下来,我有(HTML):

<span id="content"></span>

然后,我有(JavaScript):

fillObjectContent = function(object, content)
{
    $(object).html(content);
}

现在,如何使用此JS + jQuery函数将函数A中的文本放入? (或另一种方式)。我的意思是在PHP中使用:

echo "<script>fillObjectContent('#content', 'test content')";

我应该把什么放在'测试内容'的位置?

3 个答案:

答案 0 :(得分:1)

假设您要调用JavaScript fillObjectContent函数并使用PHP函数的返回/回显值设置#content元素的值(在加载页面之后),您可以使用Ajax:

var fillObjectContent = function(url, selector) {
   $.ajax({
       url, url, 
       type: 'GET',
   }).done(function(returnedData) {
      $(selector).html(returnedData);
   })
}

fillObjectContent('urlString', '#content');

请注意,echo JavaScript代码 hackish ,您可以json_encode将值存储在JavaScript变量中。

答案 1 :(得分:0)

我想你需要这个:

echo "<script>fillObjectContent('#content', '"; A(); echo "')";

答案 2 :(得分:0)

只做

echo "<script>fillObjectContent('#content', '".A()."')";

这将打印A()的内容,而不是使用此

function A() {
    echo 'test';
}

使用此

function A() {
    $var = "Some text here";
    return $var;
}

这允许你将variables传递给也可以换掉$ var值,如果你愿意的话,可以这样做:

function A($string = null) {
    $var = "Some text here";
    if($string != null) {
        $var = $string;
    }
    return $var;
}

现在,您可以使用所需的任何设置文本替换字符串,方法是调用A("Hello World");,以返回值Hello World