0
我的JS检查我的textarea上是否存在youtube链接。我将URL发送到一个PHP文件,将URL回显给JS,并附加结果。防止从PHP返回的数据被JS打印两次
问题im有,返回的数据正在打印(或追加)在我的情况下,两次。
如果我输入,在我的textarea的YouTube链接http://www.youtube.com/watch?v=iol0B-clFFM
,我此链接发送到getyoutube.php与状态200 OK
Request URL:<website> /getyoutube.php?url=youtube.com/watch?v=iol0B-clFFM
Request Method:POST
Status Code:200 OK
Request Headersview source
Accept:*/*
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
X-Requested-With:XMLHttpRequest
Query String Parametersview
url:youtube.com/watch
PHP文件只是呼应了网址,并这是我从中得到的回应。
该结果将被JS中获取,且该结果附加到HTML元素。但被追加数据被打印两次
[这是我的JS]
$(document).ready(function(){
var youtube = //regex
var getUrl = $('#url');
getUrl.keyup(function() {
if (youtube.test(getUrl.val())) {
var youtube_url = getUrl.val().match(youtube)[0];
$.post("./includes/getyoutube.php?url="+ youtube_url, {
}, function(response){
$('.echotest').append(response);
});
}
});
tldr:将数据发送到通过POST PHP文件,并回该数据。数据由我的JS打印两次。
[更新]
我添加alert(response)
和即时得到2个警报。一个接一个地。看来我的success function
正在循环两次?不知道为什么。
console.log(response); ? – underscore
或许keyUp由于某种原因被触发两次。存储网址并与之前进行比较,以确保它不相同。 – Colandus
@samitha我变空了。我应该期待看到什么数据? – bobbyjones