• 无聊却常用的代码生成(简单窗体验证)


    # -*- coding: gbk -*-
    fields = [
        [
    'linkman''姓名'],
        [
    'address''家庭住址'],
        [
    'zip''邮编'],
        [
    'email''电子邮件'],
        [
    'phoneHome''家庭电话'],
        [
    'phoneMobile''移动电话']
    ]

    print """form validation:
    ---------------------------------------------------------
    """
    print """
    String.prototype.trim = function() {
        return this.replace(/^(\s+)|(\s+)$/g, '');
    }
    """

    template 
    = """
        var obj_%s = document.all('%s');
        if (obj_%s.value.trim() == '') {
            alert('请输入%s');
            obj_%s.focus();
            return false;
        }
    """

    print "function checkForm() {"

    for x in fields:
        
    print template % (x[0], x[0], x[0], x[1], x[0])
        
    if x[0] == 'email':
            
    print """
        if (obj_email.value.trim().match(/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/) == null) {
            alert('请输入正确的电子邮件');
            obj_email.focus();
            return false;
        }
        
    """

    print """
        return true;
    }
    """

    print """// php:
    ------------------------------------------------------------
    """;
    for x in fields:
        
    print "$%s = addslashes($_POST['%s']);" % (x[0], x[0])

    结果:
    >pythonw -u "validate_code_generator.py"
    form validation:
    ---------------------------------------------------------

    String.prototype.trim = function() {
        return this.replace(/^(\s+)|(\s+)$/g, '');
    }

    function checkForm() {

        var obj_linkman = document.all('linkman');
        if (obj_linkman.value.trim() == '') {
            alert('请输入姓名');
            obj_linkman.focus();
            return false;
        }


        var obj_address = document.all('address');
        if (obj_address.value.trim() == '') {
            alert('请输入家庭住址');
            obj_address.focus();
            return false;
        }


        var obj_zip = document.all('zip');
        if (obj_zip.value.trim() == '') {
            alert('请输入邮编');
            obj_zip.focus();
            return false;
        }


        var obj_email = document.all('email');
        if (obj_email.value.trim() == '') {
            alert('请输入电子邮件');
            obj_email.focus();
            return false;
        }


        if (obj_email.value.trim().match(/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/) == null) {
            alert('请输入正确的电子邮件');
            obj_email.focus();
            return false;
        }
        

        var obj_phoneHome = document.all('phoneHome');
        if (obj_phoneHome.value.trim() == '') {
            alert('请输入家庭电话');
            obj_phoneHome.focus();
            return false;
        }


        var obj_phoneMobile = document.all('phoneMobile');
        if (obj_phoneMobile.value.trim() == '') {
            alert('请输入移动电话');
            obj_phoneMobile.focus();
            return false;
        }


        return true;
    }

    // php:
    ------------------------------------------------------------
    $linkman = addslashes($_POST['linkman']);
    $address = addslashes($_POST['address']);
    $zip = addslashes($_POST['zip']);
    $email = addslashes($_POST['email']);
    $phoneHome = addslashes($_POST['phoneHome']);
    $phoneMobile = addslashes($_POST['phoneMobile']);
    >Exit code: 0    Time: 0.219
  • 相关阅读:
    解决移动端页面在苹果端滑不到底部的问题
    js点击事件在苹果端失效的问题
    小程序开发基本步骤
    css多行文本省略号(...)
    js判断pc端和移动端的方法
    主流浏览器css兼容问题的总结
    让ie6对png透明图片支持起来
    ajax的探究与使用
    css3实现逐渐变大的圆填充div背景的效果
    js中setTimeout()时间参数设置为0的探讨
  • 原文地址:https://www.cnblogs.com/RChen/p/468674.html
Copyright © 2020-2023  润新知