javascript - 将 textarea 发送到 php 但 "+"转换为空格

标签 javascript php jquery html

我正在使用这段代码将 textarea 值发送到 php

  function SendTextArea() {
      var hr = new XMLHttpRequest();
      var url = "process.php";
      var fn = document.getElementById("textarea1").value;
      var vars = "txt=" + fn;
      hr.open("POST", url, true);
      hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      hr.onreadystatechange = function() {
          if (hr.readyState == 4 && hr.status == 200) {
              var return_data = hr.responseText;
              document.getElementById("state").innerHTML = return_data;
          }
      }
      hr.send(vars);
      document.getElementById("state").innerHTML = "wait";
  }

它运行良好,但我有一个问题 问题是:当 textarea 包含“+”时,“+”转换为空格“”

  <?php
  $text = $_POST["txt"];
  echo "$text";
  ?>

最佳答案

你可以使用 encodeURIComponent() 函数来解决这个问题:

var vars = "txt=" + encodeURIComponent(fn);

关于javascript - 将 textarea 发送到 php 但 "+"转换为空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30295759/

相关文章:

php - 检查文件是否存在于另一个网站上

javascript - 仅在页面验证后刷新页面

javascript - 如果数据为 NULL,则隐藏 <a> 标记

javascript - AngularJS 指令模板 URL 需要前导斜杠,中断测试

php - 如何修复错误: "Connection failed: Access denied for user ' username' @'servername' (using password: NO)"

php - 如何在 PHP 中将字符串转换为符号

javascript - 在 JQuery 中防止多次点击

javascript - 检查文件是否存在,根据消息显示,jQuery

javascript - Facebook javascript登录到PHP SDK

javascript - Grid 无法在此 ('quirks' ) 模式下使用错误