js动态生成Html元素实现Post操作(createElement)

前端技术 2023/09/06 JavaScript

有时,你需要Post数据到另一个页面上,那么你就需要构建一个Form表单

<form id=\"postform\" name=\"postform\" method=\"post\">
<input name=\"msg\" value=\"\"/>
</form>

复制代码 代码如下:

document.write(\"<form ...\"
//document.write(\"<iframe src=\\\"about:blank\\\" name=\\\"hiddenFrame\\\" id=\\\"hiddenFrame\\\" width=\\\"0\\\" height=\\\"0\\\" frameborder=\\\"0\\\"></iframe>\");

用如下js提交不起作用,因为打到页面上的form不是一个对象,而是一个字符串

//  theForm.action = \"http://msg.baihe.com/tortoise/pages/tortoise/sm_gb2312.jsp?ReturnURL=\"+strReturnURL;
//  document.getElementById(\"Pathid\").value=\"3070\";
//  document.getElementById(\"Title\").value=\"你好!\";
//  document.getElementById(\"Content\").value=\"我把你设为重点关注了,咱们聊聊吧:)\";
//  document.getElementById(\"CloseWindow\").value=\"1\";

所以你需要自己动态创建form对象,用如下方法实现:

var form_feedback = document.createElement(\"form\");
  document.body.appendChild(form_feedback);
    
  var i = document.createElement(\"input\");
  i.type = \"hidden\";
  i.name = \"Title\";
  i.value = \"你好!\";
  form_feedback.appendChild(i);
  
  
  var j=document.createElement(\"input\");
  j.type=\"hidden\";
  j.name=\"Content\";
  j.value=\"我把你设为重点关注了,咱们聊聊吧:)\";
  form_feedback.appendChild(j);
  
  var hiddenIframe=document.createElement(\"iframe\");
  hiddenIframe.src=\"about:blank\";
  hiddenIframe.name=\"hiddenFrame\";
  hiddenIframe.id=\"hiddenFrame\";
  hiddenIframe.width=\"0\";
  hiddenIframe.height=\"0\";
  hiddenIframe.frameborder=\"0\";
  form_feedback.appendChild(hiddenIframe);
  
  
  form_feedback.action = \"http://msg.baihe.com/tortoise/pages/tortoise/sm_gb2312.jsp?ReturnURL=\";
  form_feedback.target = \"hiddenFrame\";
  form_feedback.method = \"post\";
  form_feedback.submit();

本文地址:https://www.stayed.cn/item/17036

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。