Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript PHP中用户描述帖子上的文本替换为表情符号_Javascript_Php - Fatal编程技术网

Javascript PHP中用户描述帖子上的文本替换为表情符号

Javascript PHP中用户描述帖子上的文本替换为表情符号,javascript,php,Javascript,Php,我用javascript编写了这个脚本,它用一个表情符号替换文本,当我在textarea':)''中编写时可以正常工作您已经为oninput事件编写了JS函数。这意味着,它将查找输入以触发更改,但您在从db动态加载文本时,将文本分配到带有的段落中。将更改为,或者更好,将事件更改为onLoad将p更改为input,这样它就可以有适当的input事件,并且看起来工作得很好。你能告诉我怎么做吗?我已经按照你提到的将其从oninput更改为onLoad,并且在刷新页面后不显示仅显示表情的文本。你能发布一

我用javascript编写了这个脚本,它用一个表情符号替换文本,当我在textarea':)''中编写时可以正常工作您已经为
oninput
事件编写了JS函数。这意味着,它将查找输入以触发更改,但您在从db动态加载文本时,将文本分配到带有
的段落中。将
更改为
,或者更好,将事件更改为
onLoad

p
更改为
input
,这样它就可以有适当的
input
事件,并且看起来工作得很好。你能告诉我怎么做吗?我已经按照你提到的将其从oninput更改为onLoad,并且在刷新页面后不显示仅显示表情的文本。你能发布一个不停摆弄
<p class="ptext msg_wrap" id="message"><?php echo $row['post_description']; ?>
<script type="text/javascript">
    var map = {
   "<3": "\u2764\uFE0F",
   "</3": "\uD83D\uDC94",
   ":D": "\uD83D\uDE00",
   ":)": "\uD83D\uDE03",
   ";)": "\uD83D\uDE09",
   ":(": "\uD83D\uDE12",
   ":p": "\uD83D\uDE1B",
   ";p": "\uD83D\uDE1C",
   ":'(": "\uD83D\uDE22"
 };
 function escapeSpecialChars(regex) {
   return regex.replace(/([()[{*+.$^\\|?])/g, '\\$1');
 }
  document.getElementById('message').oninput = function() {
   for (var i in map) {
     var regex = new RegExp(escapeSpecialChars(i), 'gim');
     this.value = this.value = this.value.replace(regex, map[i]);
   }
 };

</script>