【问题标题】:passing user input variables in a post request with javascript使用 javascript 在 post 请求中传递用户输入变量
【发布时间】:2015-05-28 15:11:07
【问题描述】:

这是我的表格:

<form type="post" id="calendarform">
      <label for="day">Day</label>
      <input name="day" id="day" type="text"></input>
      <div class="clear"></div>
      <label for="time">time</label>
      <input name="time" id="time" type="text"></input>
      <div class="clear"></div>
      <label for="event_text">Event</label>
      <textarea name="event_text" id="event_text"></textarea>
  </form> 

我想使用 javascript 中的 xmlhttp 对象通过 post 请求将用户输入的变量提交到 php 脚本。这是我用来尝试执行此操作的代码,但它不起作用:

function set_event(){
  var day = document.getElementById("day").value;
  var time = document.getElementById("time").value;
  var event_text = document.getElementById("event").value;


  var xmlHttp = new XMLHttpRequest();
  xmlHttp.open("POST", "set_event.php", true);
  xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  xmlHttp.send("day=day&time=time&event_text=event_text");
  alert("setfired");
}

POST 变量正在被实例化,但它们没有被设置。任何帮助将不胜感激。

【问题讨论】:

  • 您收到任何console 错误??
  • 您是否随时提交表单?
  • xmlHttp.send("day=day&amp;time=time&amp;event_text=event_text"); 似乎没有发送数据。你在 $_POST 中看到了什么?它只是发送 $_POST['day'] = 'day' 等

标签: javascript forms post web


【解决方案1】:

不清楚是什么原因造成的,也许你可以提供更详细的信息。

试试这个:

 xmlHttp.send("day=" + day + "&time=" + time + "&event_text=" + event_text);

而不是

 xmlHttp.send("day=day&time=time&event_text=event_text");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-12
    • 2017-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多