Liu Zhian 2017-10-10 15:20 采纳率: 60%
浏览 1722

js中post提交数据时的错误

 function postData() {  //传送数据
    var myForm = document.createElement('form');
    myForm.method = 'post';
    myForm.action = 'a.jsp';
    var inputs = myForm.getElementsByTagName('input');
    var i;
    for (i = 0; i < inputs.length; i++) {
        var myInput = document.createElement('input');
        myInput.type = inputs[i].type;
        myInput.name = inputs[i].name;
        myInput.value = inputs[i].value;
        myForm.a(myInput);
    }
    document.body.a(myForm);
    myForm.submit();
    document.body.removeChild(myForm);
}

function checkSpecificKey(input) {   //根据用户输入的内容,检测是否非法
    var specialKey = "#$%\^*\'\"\+; ";//Specific Key list
    var flag = false;
    for (var i = 0; i < specialKey.length; i++) {
        var char = specialKey[i];
        flag = (input.indexOf(realkey) >= 0);
        if (flg) {
            alert('请勿输入特殊字符:(# $ % ^ \'" +或者空格 ');
            return false;
        }
    }
    return true;
}

window.onload = function () {
    function myClick() {   // 提交按钮点击事件
        alert("hah");  // 这里无法弹出提示框
        var myForm = document.getElementByTagName('form');
        var inputs = myForm.getElementsByTagName('input');
        var submit_flag = false;
        for (var i = 0; i < inputs.length; i++) {
            submit_flag = checkSpecificKey(inputs.value);
        }
        if (submit_flag)  // 没有非法输入,则post提交数据
        {
            postData();
        }
    }
}

业务逻辑为,判断每个input的内容,若全都合法,就提交数据。
可是在测试myClick()函数实现中,alert测试框无法弹出。
本人对js了解不多,希望得到大家的帮助,谢谢!

  • 写回答

4条回答 默认 最新

  • Tsui丶 2017-10-11 00:10
    关注

    在页面开f12找到js文件,进行调试,看下是哪里的问题(至于怎么调试,可以百度一下 很多的)

    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置