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



    有时,你需要Post数据到另一个页面上,那么你就需要构建一个Form表单
    <form id="postform" name="postform" method="post">

    <input name="msg" value=""/>
    </form>

    但如果当前页面是用js打到页面上的,那么你在用js提交时不起作用
    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();

  • 相关阅读:
    并发编程(四)—— ThreadLocal源码分析及内存泄露预防
    并发编程(三)—— ReentrantLock的用法
    并发编程(二)—— CountDownLatch、CyclicBarrier和Semaphore
    并发编程(一)—— volatile关键字和 atomic包
    Java 多线程(四)—— 单例模式
    Java 多线程(三)—— 线程的生命周期及方法
    Java 多线程(二)—— 线程的同步
    星空雅梦
    星空雅梦
    星空雅梦
  • 原文地址:https://www.cnblogs.com/goody9807/p/900315.html
Copyright © 2020-2023  润新知