学习笔记-多数据文章页表单提交和验证-2016.4.8

//由于文章新增或者其他数据量比较大的表单新增的时候,我们可以先用一条数据来完成新增,如果成功,我们批量复制就行避免造成错误!

html部分

<form action="###" method="post" id="main" name="content">    <table cellspacing="0" class="content">        <tr><th><strong>发布一条新文档</strong></th></tr>        <tr><td>文档标题:<input type="text" name="title" class="text" /> <span class="red">[必填]</span> ( * 标题2-50字符之间)</td></tr>        <tr><td>栏  目:<select name="nav"><option value="">请选择一个栏目类别</option>{$nav}</select>  <span class="red">[必选]</span></td></tr>        <tr><td>定义属性: <input type="checkbox" name="attr[]" value="头条" />头条                            <input type="checkbox" name="attr[]" value="推荐" />推荐                            <input type="checkbox" name="attr[]" value="加粗" />加粗                            <input type="checkbox" name="attr[]" value="跳转" />跳转        </td></tr>        <tr><td>标  签:<input type="text" name="tag" class="text" /> ( * 每个标签用‘,‘隔开,总长30位之内)</td></tr>        <tr><td>关 键 字 :<input type="text" name="keyword" class="text" /> ( * 每个关键字用‘,‘隔开,总长30位之内)</td></tr>        <tr><td>缩 略 图 :<input type="text" name="thumbnail" class="text" readonly/>                            <input type="button" value="上传" onclick="centerWindow(‘../templates/upFile.html.‘,‘upFile‘,‘400‘,‘150‘)">                            <img name="pic" alt="缩略图"  style="display: none;margin-left: 66px"> ( * 必须是jpg,gif,png,大小200KB)            </td>        </tr>        <tr><td>文章来源:<input type="text" name="source" class="text" /> ( * 文章来源20位之内)</td></tr>        <tr><td>作  者:<input type="text" name="author" class="text" /> ( * 作者10位之内)</td></tr>        <tr><td><span class="middle">内容摘要:</span><textarea name="info"></textarea>  <span class="middle">( * 内容摘要200之内)</span></td></tr>        <tr><td>                <!-- 加载编辑器的容器 -->                <script id="container" name="details" type="text/plain"></script>                <!-- 配置文件 -->                <script type="text/javascript" src="../ueditor/ueditor.config.js"></script>                <!-- 编辑器源码文件 -->                <script type="text/javascript" src="../ueditor/ueditor.all.js"></script>                <!-- 实例化编辑器 -->                <script type="text/javascript">                    var ue = UE.getEditor(‘container‘);                </script>            </td>        </tr>        <tr><td>评论选项:<input type="radio" name="commend" value="1" checked="checked" />允许评论                                    <input type="radio" name="commend" value="0" />禁止评论                            浏览次数:<input type="text" name="count" value="100" class="text small" />        </td></tr>        <tr><td>文档排序:<select name="sort">                                        <option>默认排序</option>                                        <option>置顶一天</option>                                        <option>置顶一周</option>                                        <option>置顶一月</option>                                        <option>置顶一年</option>                                    </select>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;消费金币:<input type="text" name="gold" value="0" class="text small" />        </td></tr>        <tr><td>阅读权限:<select name="limit">                                        <option>开放浏览</option>                                        <option>初级会员</option>                                        <option>中级会员</option>                                        <option>高级会员</option>                                        <option>VIP会员</option>                                    </select>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;标题颜色:<select name="color">                                        <option value="">默认颜色</option>                                        <option value="red" style="color:red;">红色</option>                                        <option value="blue" style="color:blue;">蓝色</option>                                        <option value="orange" style="color:orange; ">橙色</option>                                    </select>        </td></tr>        <tr><td><input type="submit" name="send" value="发布文档" onclick="return checkAddContent()" /> <input type="reset" value="重置" /></td></tr>        <tr><td></td></tr>    </table></form>

php控制器部分
private function add(){    if(isset($_POST[‘send‘])){        if (Validate::checkNull($_POST[‘title‘])) Tool::alertBack(‘警告:标题不得为空!‘);        if (Validate::checkLength($_POST[‘title‘],2,‘min‘)) Tool::alertBack(‘警告:标题长度不得小于两位!‘);        if (Validate::checkLength($_POST[‘title‘],50,‘max‘)) Tool::alertBack(‘警告:标题长度不得大于五十位!‘);        if (Validate::checkNull($_POST[‘nav‘])) Tool::alertBack(‘警告:必须选择一个栏目!‘);        if (Validate::checkLength($_POST[‘tag‘],30,‘max‘)) Tool::alertBack(‘警告:tag标签长度不得大于三十位!‘);        if (Validate::checkLength($_POST[‘keyword‘],30,‘max‘)) Tool::alertBack(‘警告:关键字长度不得大于三十位!‘);        if (Validate::checkLength($_POST[‘source‘],20,‘max‘)) Tool::alertBack(‘警告:文章来源长度不得大于二十位!‘);        if (Validate::checkLength($_POST[‘author‘],10,‘max‘)) Tool::alertBack(‘警告:作者长度不得大于十位!‘);        if (Validate::checkLength($_POST[‘info‘],200,‘max‘)) Tool::alertBack(‘警告:内容摘要不得大于两百位!‘);        if (Validate::checkNull($_POST[‘details‘])) Tool::alertBack(‘警告:详细内容不得为空!‘);        if (Validate::checkNum($_POST[‘count‘])) Tool::alertBack(‘警告:浏览次数必须是数字!‘);        if (Validate::checkNum($_POST[‘gold‘])) Tool::alertBack(‘警告:消费金币必须是数字!‘);        if(isset($_POST[‘attr‘])){            $this->model->attr = implode(‘,‘,$_POST[‘attr‘]);        }else{            $this->model->attr = ‘无属性‘;        }        $this->model->title   = $_POST[‘title‘];        $this->model->nav     = $_POST[‘nav‘];        $this->model->tag     = $_POST[‘tag‘];        $this->model->keyword = $_POST[‘keyword‘];        $this->model->thumb   = $_POST[‘thumbnail‘];        $this->model->source  = $_POST[‘source‘];        $this->model->author  = $_POST[‘author‘];        $this->model->info    = $_POST[‘info‘];        $this->model->content = $_POST[‘details‘];        $this->model->gold    = $_POST[‘gold‘];        $this->model->commend = $_POST[‘commend‘];        $this->model->count   = $_POST[‘count‘];        $this->model->color   = $_POST[‘color‘];        $this->model->addContent() ? Tool::alert("文档发布成功!",‘?action=add‘) : Tool::alertBack(‘文档发布失败!‘);

    }    $this->tpl->assign(‘add‘,true);    $this->tpl->assign(‘title‘,‘新增文档‘);    //获取联级下拉菜单    /*     *   使用<optgroup></optgroup>分组获取主菜单     *  再内容控制器内实例化导航模型     */    //初始化一个变量    $htm = 0;    $nav = new NavModel();    //$nav->getAllChildNav();   foreach($nav->getAllNav() as $object){       $htm .= ‘<optgroup label="‘.$object->nav_name.‘">‘."\r\n";        $nav->id = $object->id;        if(!!$childNav = $nav->getAllChildNav()){           foreach($childNav as $obj){                $htm .= ‘<option value="‘.$obj->id.‘">‘.$obj->nav_name.‘</option>‘."\r\n";           }       }       $htm .=‘</optgroup>‘;    }    $this->tpl->assign(‘nav‘,$htm);}
js验证部分
function checkAddContent() {    var fm = document.content;    if (fm.title.value == ‘‘ || fm.title.value.length < 2 || fm.title.value.length > 50) {        alert(‘警告:标题不得为空并且不得小于两位并且不得大于50位!‘);        fm.title.focus();        return false;    }    if (fm.nav.value == ‘‘) {        alert(‘警告:必须选择一个栏目!‘);        fm.nav.focus();        return false;    }    if (fm.tag.value.length > 30) {        alert(‘警告:tag标签不得大于30位!‘);        fm.tag.focus();        return false;    }    if (fm.keyword.value.length > 30) {        alert(‘警告:关键字不得大于30位!‘);        fm.keyword.focus();        return false;    }    if (fm.source.value.length > 20) {        alert(‘警告:文章来源不得大于20位!‘);        fm.source.focus();        return false;    }    if (fm.author.value.length > 10) {        alert(‘警告:作者不得大于10位!‘);        fm.author.focus();        return false;    }    if (fm.info.value.length > 200) {        alert(‘警告:内容摘要不得大于200位!‘);        fm.info.focus();        return false;    }    if (fm.details.value == ‘‘) {        alert(‘警告:详细内容不得为空!‘);        fm.details.focus();        return false;    }    if (isNaN(fm.count.value)) {        alert(‘警告:浏览次数必须是数字!‘);        fm.count.focus();        return false;    }    if (isNaN(fm.gold.value)) {        alert(‘警告:消费金币必须是数字!‘);        fm.gold.focus();        return false;    }    return true;}
				
时间: 2024-10-08 14:15:47

学习笔记-多数据文章页表单提交和验证-2016.4.8的相关文章

ExtJS学习笔记3:载入、提交和验证表单

载入数据 1.比較好用的设置form数据的方法: formPanel.getForm().setValues([{id: 'FirstName', value: 'Joe'}]); 当中id值为form中field的name属性值.value为要赋的值 2.通过对象赋值: Ext.define('Request', { extend: 'Ext.data.Model', fields: [ 'FirstName', 'LastName', 'EmailAddress', 'TelNumberCo

KVM虚拟化学习笔记系列文章列表(转)

Kernel-based Virtual Machine KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51cto.com/703525/1288795kvm虚拟化学习笔记(二)之linuxkvm虚拟机安装http://koumm.blog.51cto.com/703525/1289627kvm虚拟化学习笔记(三)之windowskvm虚拟机安装h

[Spring MVC]学习笔记--表单标签的使用

github例子地址: https://github.com/lemonbar/spring-mvc-jsp 效果图 关于spring mvc的标签的讲解, 有一篇blog已经讲的很细了. http://haohaoxuexi.iteye.com/blog/1807330 官方文档地址: http://docs.spring.io/spring/docs/4.0.6.RELEASE/spring-framework-reference/htmlsingle/#view-jsp 而且我在上面的例子

后端模拟网页表单提交数据

/// <summary> /// 后端模拟网页表单提交数据 /// </summary> /// <returns></returns> public string TestFormPost() { using (HttpClient client = new HttpClient()) { using (var content = new MultipartFormDataContent()) { //字段 NameValueCollection nvC

Ext.Net学习笔记21:Ext.Net FormPanel 字段验证(validation)

Ext.Net学习笔记21:Ext.Net FormPanel 字段验证(validation) 作为表单,字段验证当然是不能少的,今天我们来一起看看Ext.Net FormPanel的字段验证功能. 约束功能 为了防止用户输入不合法的数据,我们可以使用约束功能来限制用户的输入,例如TextField的 MinLength/MaxLength,NumberField的MinValue/MaxValue,DateField的MinDate /MaxDate等属性,它们可以将用户输入的值限定在一个合

html表单提交数据验证

我们在做B/S项目开发中,经常会用到表单提交数据,在页面需要做js数据验证,简单方法如下 js部分: <script type="text/javascript"> function validate_required(field, alerttxt) { with (field) { if (value == null || value == "") { alert(alerttxt); return false } else { return tru

UI标签库专题三:JEECG智能开发平台 FormValidation(表单提交及验证标签)

?? 1. FormValidation(表单提交及验证标签) 1.1.  参数 属性名 类型 描述 是否必须 默认值 action string 表单提交路径 否 null formid string 表单唯一标示 是 formobj refresh boolean dialog为true时是否刷新父页面 否 true callback string 表单提交完成后的回调函数 否 null beforeSubmit string 表单提交前的处理函数 否 null btnsub string

javascprit form表单提交前验证以及ajax返回json

1.今天要做一个手机验证码验证的功能.需求是前端页面点击发送 短信验证码,后台接收后通过ajax返回到前端,之后前端在提交时候进行验证.思路很简单,不过做的过程还是学到不少的东西. 1.ajax请求后返回 returning 405 Method Not Allowed 原因是我后台返回的时候没有加上: @ResponseBody注解.加上后返回的数据是json字符串,但是js只能操作json对象.需要把json字符串转为json对象.一般的有三种方式1.JSON.parse();如 var j

UI标签库专题三 JEECG智能开发平台 FormValidation 表单提交及验证标签

1. FormValidation(表单提交及验证标签) 1.1.  参数 属性名 类型 描述 是否必须 默认值 action string 表单提交路径 否 null formid string 表单唯一标示 是 formobj refresh boolean dialog为true时是否刷新父页面 否 true callback string 表单提交完成后的回调函数 否 null beforeSubmit string 表单提交前的处理函数 否 null btnsub string 触发表