通过createElement创建个form,然后向form中追加属性,当属性的值过长的时候,form.submit()就出现error。
有没有哪位大虾遇到过类似问题,有没有解决的方案。
谢谢先

解决方案 »

  1.   

    用于主画面给pop画面传值,先创建pop画面的form
      

  2.   

    不太明白
    按我理解:
    如果新建的控件属性的值需要界定,那就直接判断这个属性了,如果让其submit() 提示错误,那就导到错误页面了不知小弟的理解对不对
      

  3.   

    主画面要弹出pop画面的时候,为了传递参数,就先创建pop画面的form,设置为不表示,然后再在form中追加属性,是所需要传递的参数。
    给这些属性付值,如果字符串过长的话,form.submit就出现javascript错误。
      

  4.   

    createForm("form02","form02","testAction.do","form02","GET");
    createInputTag("navi","navi","","form02","A");
    createInputTag("nnknrnbn","nnknrnbn","hidden","form02","123");
    createInputTag("btuuinduid","btuuinduid","","4");var elem = document.getElementById("form02");
    childWindow = window.open("",form02,"directories=no,location=no);
    elem.submit();
      

  5.   

    function createForm(fid,fname,faction,ftarget,fmethod){
    //追加するformが有れば初期処理
    if (!document.getElementById(fid)){
    }else{
    var form = document.getElementById(fid);
    form.innerHTML="";
    return(form);
    }
    var body  = document.getElementsByTagName("body");
    var form  = document.createElement("form");
    form.method = fmethod;
    form.action = faction;
    form.target = ftarget;
    form.id = fid;
    form.name = fname;
    form.style.display = "none";
    body[0].appendChild(form);
    return(form);
    }
      

  6.   

    你使用的form 方法是get,get方法有字节数限制的,把它改为post
      

  7.   

    get和post有什么区别阿
    传递文字的时候,用get的时候,在pop画面取得的正常值
    但是用post的时候,在pop画面取得值就是乱码什么原因阿
      

  8.   

    post和get的编码不一样,post使用页面编码,get使用url编码。
    出现乱码,那就是编码不匹配。