我为一个函数创建了一个简单的测试,用于从 YouTube 网址中获取视频 ID 并将其回显。它按原样工作正常,但是当我在混合中引入 jQuery 代码时,我收到此错误 NS_ERROR_XPC_BAD_CONVERT_JS:无法转换 JavaScript 参数
。该错误是在第 7071 行注释 jquery.js 文件。我不知道该怎么做或到底是什么导致了这个问题。代码如下。
第一个文件
<script src="http://code.jquery.com/jquery-latest.js"></script>
<input type="text" id="url" />
<input type="button" id="press" value="click" />
<div id="return"></div>
<script type="text/javascript" >
$('#press').click(function () {
$('#url').val();
$.post('ajax_youtube.php', {url:url}, function(data) {
$('#return').html(data);
});
});
</script>
这是ajax_youtube.php
文件
<?php
function get_youtube_url($text) {
$text = preg_replace('~https?://(?:[0-9A-Z-]+\.)?(?:youtu\.be/| youtube\.com\S*[^\w
\-\s])([\w\-]{11})(?=[^\w\-]|$)(?![?=&+%\w]*(?:[\'"][^<>]*>| </a>))[?=&+%\w-]*~ix',
'$1', $text);
echo $text;
}
$url = $_POST['url'];
get_youtube_url($url);
?>
最佳答案
您忘记将url
分配给一个值,$('#url').val();
应该是var url = $('# url').val();
关于php 正则表达式函数无法转换 JavaScript 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12489849/