所以我正在研究一個系統,從網頁獲取元標記以獲取從鏈接嵌入視頻的信息(如Facebook)。Jquery Json輸出特殊字符問題
我也得到頁面的標題和描述來預先填寫一些字段。這裏是我有一個問題,說明正常工作,因爲它是一個textarea,所以我可以使用.html()
但標題是輸入,所以我可以使用.attr()
或.val()
和問題來自特殊字符,如(éàèö äü)。
這是我使用的代碼。
這是我的Jquery動作腳本:
<script type="text/javascript" charset="utf-8">
$(function(){
$("#url").bind("change", function(){
var url = $("#url").val();
$.getJSON("/ajax/embed_video.php", { url: url }, function(json) {
$(json.embed).appendTo("#feeds");
$("#title").attr("value", json.title);
$("#description").html(json.description);
});
});
});
</script>
這是導出JSON數據我的PHP文件:
$url = $_GET['url'];
$result = getUrlData($url); //this get the metadata from the url
$description = $result['metaTags']['og:description']['value'];
$title = $result['metaTags']['og:title']['value'];
$img_name = basename($result['metaTags']['og:image']['value']);
copy(''.$result['metaTags']['og:image']['value'].'', "../".$path_video_temp.$img_name);
$embed = " "; //EMBED CODE
$data = array('title' => $title,'description' => $description, 'embed' => $embed, 'img' => '/'.$path_video_temp.$img_name);
header('Content-Type: application/json; Charset=UTF-8');
echo json_encode($data);
當我與任何口音或打印任何特殊字符的標題out é
等
我試過用html_entity_decode
和htmlspecialchars_decode
我希望有人知道問題在哪裏。
感謝您的時間和日子過好
里斯
非常感謝,我使用了你在第二次編輯中鏈接到的代碼,它完美地工作。 謝謝你的時間 –