Ajax jquery和php:如何控制反馈?
假设你通过ajax发送数据。服务器将处理它(PHP)和发送反馈,你可以抓住使用Complete: function(data) { //WRITE HTML TO DIV $('#somehing').html(data) }
的问题是: 是有它传递到HTML元素之前修改数据(编辑,删除)的方法吗?Ajax jquery和php:如何控制反馈?
这里是什么,我的意思是一个简单的例子:
//php side
echo 'Invalid email';
echo 'Enter your username';
echo 'fine';
echo 1;
echo 2;
// Jquery and Ajax
$.ajax({
type: 'POST',
url: 'render.php',
data:values,
complete: function(data) {
$('#something').html(data) /* all those messages in php will be printed
into #something including the numbers. how to delete or edit those numbers
from appearing in #something? */
}
});
试试这个删除喜欢的数字,
complete:function(data){
data=data.replace(/\d+/,''); // Regular expression without quotation marks.
// or you can replace the something text like
// $('#something').text(function(){
// return this.innerText.replace(/\d+/,'');
// });
alert(data);
}
它的作品!在正则表达式周围没有引号:(/ \ d + /,'');非常感谢! – Dexter 2014-10-08 06:32:39
数据返回基本上只是一个字符串,你说你正在做的方式“接受它作为‘HTML’”你应该能够使用简单的JavaScript来控制它出了大门,比如我做事情的方式,有时是这样的:
的PHP返回类似:
echo $variable_1 . ":" . $variable_2
然后,当我得到临屋T作为data
它只是一个字符串,说
variable 1:variable 2
所以我做什么,接下来就是我用冒号
var var1 = data.split(":")[0];
var var2 = data.split(":")[1];
分离变量现在,这只是一个简单的例子。我不完全确定你要返回的内容,但看起来你正在寻找1
的索引,而不是"1"
。这可能会有所作为。尝试在引号中搜索1,然后这将搜索一个字符串。
谢谢ntgCleaner,在我的情况下,我有很多字符串:其中大多数是错误消息(例如,如果用户放置无效的电子邮件:它返回字符串'无效的电子邮件')但是有数字(在PHP中,引号如:回声1;)我想用他们的东西,我不希望他们出现错误消息。这就是为什么我要问一个控制返回数据的方法。 – Dexter 2014-10-08 05:17:18
是的分裂:P我也做这件事情,即使它不成熟:D – khandelwaldeval 2014-10-08 05:46:25
你是如何接收响应?它是一个HTML标记?或json? – Ghost 2014-10-08 04:37:16
我接受她为 'HTML' – Dexter 2014-10-08 04:38:51
如果你recieving它作为'html',然后就换了,如果'($(数据).find( 'myElement')。文本()。匹配('/ 0 -9] /'){//号}' – Ohgodwhy 2014-10-08 04:39:58