关于php与js处理HTML实体与字符转换
关于php与js处理HTML实体与字符转换
调用了一个第三方的接口,主要功能是通过传递的汉字内容,获取对应的拼音。
NO1:接口为 "https://tool.lu/py5bconvert/ajax.html" 方式为POST,参数有
$param = {
'tone'=>"1", //获取声标
'code'=>"", //文字内容
'operate'=>"py" //转换类型 (py:拼音 5b:五笔)
};
NO2:问题主要出现在返回的数据的声标上,由于没有进行数据转换,显示在页面时是用的HTML实体展示,不符合要求,所以需要转换,方式见NO3。
NO3:php有现成的接口可以直接就处理了:html_entity_decode($htmlstr) ,也可以通过AJAX请求之后获取到数据再处理,方式如下:
var HtmlUtil = {
htmlEncode:function(html){
var temp = document.createElement("div");
(temp.textContent != undefined)?(temp.textContent = html) : (temp.innerText = html);
var output = temp.innerHTML;
temp = null;
return output;
},
htmlDecode:function(text){
var temp = document.createElement("div");
temp.innerHTML = text;
var output = temp.innerText|| temp.textContent;
temp = null;
return output;
}
};
function stringToEntity(){
var encodeHTML = "á";
var decodeHTML = HtmlUtil.htmlDecode("进行html解码:"+encodeHTML);
alert(decodeHTML);
}