繁体   English   中英

PHP / AJAX:在ajax响应中无法显示外来字符

[英]PHP/AJAX : Can't display foreign character in ajax response

在我的数据库中,我有外国名称的特殊字符。 我在html中该特殊字符的正常输入中使用了<meta charset="utf-8"> ,它可以正常工作。 但是,当我调用ajax请求并使用html(data)将特殊字符显示为特定的div时,文本将变为????? ??????? ????? ????? ??????? ????? 如何解决这个问题

html

<div id="country_info"> </div>

js

$(document).on('change','#country_list', function(){
     var thisVal_id = $(this).val();
  $.ajax({
    url:'../ajax/paraphernalia/ajax_displayCountry_info.php',
    type:'post',
    data: {thisVal_id : thisVal_id , event_id : event_id},
    cache : false,
    success : function(data){
        $('#country_info').html(data);
    }
 });
});

response.php

//this select option contains different foreign characters
$output .= '<select id="official_name" class="form-control" style="padding:0px; !important">';
        while($row1 = mysql_fetch_assoc($sql1)){
            $output .= '<option value="'.$row1['name_official'].'">'.$row1['name_official'].'</option>';
        }
$output .= '</select>';
echo $output;

只需做一个小改变,这对我来说就是工作。

$output .= '<select id="official_name" class="form-control" style="padding:0px; !important">';
    while($row1 = mysql_fetch_assoc($sql1)){
$name=mb_convert_encoding($row1['name_official'], 'HTML-ENTITIES', 'utf-8')
        $output .= '<option value="'.$name.'">'.$name.'</option>';
    }
$output .= '</select>';
echo $output;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM