- 2015 12/04
前段部分代码:
<form class="myform" action="<?=$this->act?>">
<div class="addclass">
<div class="modify_list mb10">
<dl>
<dt><label for="classname">*班级名称</label></dt>
<dd><input type="text" name="nickname[]" class="required" data_value="班级名称" value="" placeholder="请输入班级名称" data-role="none"></dd>
</dl>
</div>
<div class="modify_list mb20">
<dl>
<dt>*班级类型</dt>
<dd>
<ul class="clearfix radio">
<?php foreach($this->model('Class')->getTypes() as $v):?>
<li data_type="<?=$v['id']?>">< ?=$v['name']?>班</li>
<?php endforeach?>
<input type="hidden" value="" name="type_id[]" class="required" data_value="班级类型">
</ul>
</dd>
</dl>
<dl>
<dt>开班时间</dt>
<dd><input class="mydate1" type="date" name="open_time[]" placeholder="请选择" data-role="none" value=""></dd>
</dl>
</div>
</div>
<div class="pl10 pr10 pb10"><a href="jacascript:;" onclick="addclass()">继续添加</a></div>
<div class="pl10 pr10 pb10"><input type="submit" value="提交" data-role="none"></div>
</article>
</form>
<script>
function move(){
$(".radio li").on('click', function () {
$(this).siblings('li').removeClass('active');
$(this).addClass('active');
$(this).siblings('input').val($(this).attr('data_type'));
})
}
move();
function addclass() {
$('.addclass').last().clone().appendTo($('.addclass').last());
move();
}
$(".myform").submit(function(){
var error=0;
var url=$(this).attr('action');
$('.required').each(function() {
if($(this).val() == ""||$(this).val() == 0){
$.prompt($(this).attr("data_value")+"不能为空");
error++;
return false;
}
});
if(error==0)
{
$('input[type="submit"]').attr('disabled',true);
$.post(url,$(this).serialize(),function(data){
json = JSON.parse(data);
$.prompt(json.message,json.url);
$('input[type="submit"]').attr('disabled',false);
});
}
return false;
});
jQuery.extend({
prompt:function(title,url) {
var error = '<div class="error_content" style="background:#000;color:#fff;line-height:44px;height:44px;word-wrap: break-word;position: fixed;left: 0;top: 0;width: 100%;margin:0;text-align: center;display:none;z-index:100000;">名称不能为空</div>';
$(".error").remove();
$(".error_content").remove();
$(document.body).append(error);
$(".error_content").slideDown(500,function(){
$(".error_content").show();
});
$(".error_content").html(title);
setTimeout(function(){
$(".error_content").slideUp(500,function(){
$(".error_content").remove();
});
if(typeof(url)!='undefined'&&url!=""&&url!=null){
window.location.href=url;
}
},2000);
}
});
</script>
后端PHP代码:
if($this->request->getIsAjaxRequest()){
if(!empty($_POST) && is_array($_POST['nickname']) && is_array($_POST['type_id']) && is_array($_POST['open_time'])) {
$error_num = 0;
for ($i = 0; $i < count($_POST['nickname']); $i++) {
$post['nickname'] = htmlspecialchars($_POST['nickname'][$i]);
$post['type_id'] = intval($_POST['type_id'][$i]);
$post['open_time'] = htmlspecialchars($_POST['open_time'][$i]);
$post['school_id'] = $this->info['school_id'];
$is = $this->class->add($post);
if(!$is) $error_num++;
}
}
if($error_num == 0){
parent::toJson('添加成功!',1,'/index/register/finish/');
}else{
parent::toJson($this->class->error,0);
}
}

