2013-07-19 33 views
0

我有这样的:

<div class="text_window"></div> 
<textarea></textarea> 
<button>Send</button> 

$(function() { 
    getStatus(); 
}); 

function getStatus() { 

    $.post('update.php', function(data) { 
     $('div.text_window').html(data); 
    }); 
    setTimeout("getStatus()",1000); 
} 

update.php

$text = $_POST['text']; 
if (!$text) $text = 'string'; 
echo $text; 

现在,如果我手动更改$text var和保存文件,它将相应地在浏览器中更新,但我想通过将文本放入textarea并按下按钮来更改它。

我写了下面的功能,但什么都不会返回。

$('button').click(function() { 
    update(); 
}); 

function update() { 
    var text = $('textarea').val(); 
    $.post('update.php',{text:text}, function(data) { 
     alert ('ok'); 
    }); 
} 

我如何更新使用文本区域和按钮该页面“$文本”变量?

+0

_千万,__ever___字符串传递给'setTimeout'或'setInterval'。第一个参数应该是一个函数参考:'的setTimeout( “的getStatus()”,1000);'<== __bad__ ==>'的setTimeout(的getStatus,1000);'<== __Good__ –

+0

让我们尝试的var_dump代替回波 而看到网络选项卡(如果你使用的是Chrome)的请求结果 – Horst

回答

1

你缺少收盘)并没有回声的功能。

function update() { 
    var text = $('textarea').val(); 

    $.post('update.php',{text:text}, function(data) { 
     // echo 'ok'; 
     alert('ok'); 
     console.log('ok') 
    }); // here 
} 
+0

一个可爱的注释://这里XD – Horst

+1

@fattomhk是的,我想作一个大的红色箭头出现,但它并没有让我:/ – Spokey

+0

错字在这里,在我的代码中没关系,我仍然有同样的问题。 –

0

尝试:

$.post('update.php',{text:text}, function(data) { 
    echo 'ok'; 
}); 
+0

总是检查你的控制台的错误。 –

+0

我总是这样做。我的问题可以在半分钟内在别人的机器上重新创建。 –