angularJs实现信息数据提交功能
如下简单的报名提交的实现
1.数据绑定
2.$http.post()提交数据
一、数据绑定
<!--报名部分-->
<div class="attend_box">
<div class="common_info_box z-index9">
<div class="common_attend_title">注意! 所有参赛人员需用手机号码注册成为学子易贷用户方可报名成功!</div>
<div class="common_list mt30 z-index9"><span>高校名称:</span><input type="text" ng-model="data.SchoolName" data-provide="typeahead" class="typeahead"/></div>
<div class="common_list mt30"><span>队长姓名:</span><input type="text" ng-model="data.CaptainName" class="teamLeader" /><span class="ml34">手机号码:</span><input type="text" class="teamLeaderPhone Js_Mobile" ng-model="data.CaptainMobile" /><em class="first"></em></div>
</div>
<div class="Team_member_box">
<div class="common_list mt20"><span>队员</span><span class="ml85">姓名</span><span class="ml97">手机号码</span></div> <div class="common_list mt20"><span>队员一</span><input type="text" ng-model="data.Member1Name" class="teamMember" /><input type="text" ng-model="data.Member1Mobile" class="teamMember Js_Mobile" /><em></em></div>
<div class="common_list mt20"><span>队员二</span><input type="text" ng-model="data.Member2Name" class="teamMember" /><input type="text" ng-model="data.Member2Mobile" class="teamMember Js_Mobile" /><em></em></div>
<div class="common_list mt20"><span>队员三</span><input type="text" ng-model="data.Member3Name" class="teamMember" /><input type="text" ng-model="data.Member3Mobile" class="teamMember Js_Mobile" /><em></em></div>
<div class="common_list mt20"><span>队员四</span><input type="text" ng-model="data.Member4Name" class="teamMember" /><input type="text" ng-model="data.Member4Mobile" class="teamMember Js_Mobile" /><em></em></div>
<div class="common_list mt20"><span>替补队员</span><input type="text" ng-model="data.BackupName" class="teamMember" /><input type="text" ng-model="data.BackupMobile" class="teamMember " /><em></em></div>
</div>
<a href="javascript:void(0);" class="join_btn" ng-click="submit()"></a>
</div>
$scope.data = {};
$scope.submit = function () {
//$scope.get("url", {}).success(function () {
var data = {
Corps: $scope.data.Corps,
SchoolName: $scope.data.SchoolName,
CaptainName: $scope.data.CaptainName,
CaptainMobile: $scope.data.CaptainMobile,
Member1Name: $scope.data.Member1Name,
Member1Mobile: $scope.data.Member1Mobile,
Member2Name: $scope.data.Member2Name,
Member2Mobile: $scope.data.Member2Mobile,
Member3Name: $scope.data.Member3Name,
Member3Mobile: $scope.data.Member3Mobile,
Member4Name: $scope.data.Member4Name,
Member4Mobile: $scope.data.Member4Mobile,
BackupName: $scope.data.BackupName,
BackupMobile: $scope.data.BackupMobile
}
}
二、$http.post()方法提交数据
var url = "../user/Handler/Users/GameActivity.ashx?action=join";
var transFn = function (data) { return $.param(data) }, postCfg = { headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' }, transformRequest: transFn }; $http.post(url, data, postCfg).success(function (obj) {
//console.log(obj);
if (obj.success) {
//console.log("222" + obj);
alert("提交成功");
$(".attend_box input").val("");
$(".common_list em").css("background", "none");
}
else {
//alert(obj.reason);
alert("提交失败:" + obj.reason);
//console.log("222" + obj);
}
});
注意的参数3部分
1.data提交的数据
2.url提交地址
3.postCfg 对传入的是JSON字符串进行转换 转成类似$.post的请求 并传递头进行设置
$http.post(url, data, postCfg)
完整js代码
var app = angular.module('myApp', ['tm.pagination']);///第二个参数:依赖模块 ['tm.pagination']
app.controller('myCtrl', function ($scope, $http, $timeout) {
$scope.data = {};
$scope.submit = function () {
//$scope.get("url", {}).success(function () {
var data = {
Corps: $scope.data.Corps,
SchoolName: $scope.data.SchoolName,
CaptainName: $scope.data.CaptainName,
CaptainMobile: $scope.data.CaptainMobile,
Member1Name: $scope.data.Member1Name,
Member1Mobile: $scope.data.Member1Mobile,
Member2Name: $scope.data.Member2Name,
Member2Mobile: $scope.data.Member2Mobile,
Member3Name: $scope.data.Member3Name,
Member3Mobile: $scope.data.Member3Mobile,
Member4Name: $scope.data.Member4Name,
Member4Mobile: $scope.data.Member4Mobile,
BackupName: $scope.data.BackupName,
BackupMobile: $scope.data.BackupMobile
}
if (data.Corps == undefined || data.Corps == "") { alert("战队名称不能为空!"); return; }
if (data.SchoolName == undefined || data.SchoolName == "") { alert("高校名称不能为空!"); return; }
if (data.CaptainName == undefined || data.CaptainName == "") { alert("队长姓名不能为空!"); return; }
if (data.CaptainMobile == undefined || data.CaptainMobile == "") { alert("队长手机号码不能为空!"); return; }
var _checkphone = /^1\d{10}$/;
if (!_checkphone.test(data.CaptainMobile)) { alert("队长手机号码格式不正确!"); return; }//验证不正确时显示状态
if (data.Member1Name == undefined || data.Member1Name == "") { alert("队员一姓名不能为空!"); return; }
if (data.Member1Mobile == undefined || data.Member1Mobile == "") { alert("队员一手机号码不能为空!"); return; }
var _checkphone = /^1\d{10}$/;
if (!_checkphone.test(data.Member1Mobile)) { alert("队员一手机号码格式不正确!"); return; }//验证不正确时显示状态
if (data.Member2Name == undefined || data.Member2Name == "") { alert("队员二姓名不能为空!"); return; }
if (data.Member2Mobile == undefined || data.Member2Mobile == "") { alert("队员二手机号码不能为空!"); return; }
var _checkphone = /^1\d{10}$/;
if (!_checkphone.test(data.Member2Mobile)) { alert("队员二手机号码格式不正确!"); return; }//验证不正确时显示状态
if (data.Member3Name == undefined || data.Member3Name == "") { alert("队员三姓名不能为空!"); return; }
if (data.Member3Mobile == undefined || data.Member3Mobile == "") { alert("队员三手机号码不能为空!"); return; }
var _checkphone = /^1\d{10}$/;
if (!_checkphone.test(data.Member3Mobile)) { alert("队员三手机号码格式不正确!"); return; }//验证不正确时显示状态
if (data.Member4Name == undefined || data.Member4Name == "") { alert("队员四姓名不能为空!"); return; }
if (data.Member4Mobile == undefined || data.Member4Mobile == "") { alert("队员四手机号码不能为空!"); return; }
var _checkphone = /^1\d{10}$/;
if (!_checkphone.test(data.Member4Mobile)) { alert("队员四手机号码格式不正确!"); return; }//验证不正确时显示状态
// if (data.BackupName == undefined || data.BackupName == "") { alert("替补队员姓名不能为空!"); return; }//替补队员可以为空 2016-2-18修改
//if (data.BackupMobile == undefined || data.BackupMobile == "") { alert("替补队员手机号码不能为空!"); return; }
var _checkphone = /^1\d{10}$/;
if (data.BackupMobile != "" && data.BackupMobile != undefined) {
if (!_checkphone.test(data.BackupMobile)) { alert("替补队员手机号码格式不正确!"); return; }//验证不正确时显示状态
}
var url = "../user/Handler/Users/GameActivity.ashx?action=join";
var transFn = function (data) { return $.param(data) }, postCfg = { headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' }, transformRequest: transFn };
$http.post(url, data, postCfg).success(function (obj) {
//console.log(obj);
if (obj.success) {
//console.log("222" + obj);
alert("提交成功");
$(".attend_box input").val("");
$(".common_list em").css("background", "none");
}
else {
//alert(obj.reason);
alert("提交失败:" + obj.reason);
//console.log("222" + obj);
}
});
// console.log($scope.data.SocialActivity);
}
angularJs实现信息数据提交功能的更多相关文章
- 全国天气预报信息数据 API 功能简介与代码调用实战视频
此文章对开放数据接口 API 之「全国天气预报信息数据 API」进行了功能介绍.使用场景介绍以及调用方法的说明,供用户在使用数据接口时参考之用,并对实战开发进行了视频演示. 1. 产品功能 接口开放了 ...
- AngularJS 实现页面滚动到底自动加载数据的功能
要实现这个功能,可以通过https://github.com/sroze/ngInfiniteScroll这个第三方控件来实现.步骤如下: 1. 下载ng-infinite-scroll.js程序ht ...
- AngularJS进阶(二十)HTML5实现获取地理位置信息并定位功能
HTML5实现获取地理位置信息并定位功能 注:请点击此处进行充电! 前言 这篇文章主要介绍了HTML5实现获取地理位置信息并定位功能,本文讲解了原生HTML5.百度地图.谷歌地图等三种获取理位置信息并 ...
- AngularJS:实现页面滚动到底自动加载数据的功能
要实现这个功能,可以通过https://github.com/sroze/ngInfiniteScroll这个第三方控件来实现.步骤如下: 1. 下载ng-infinite-scroll.js程序ht ...
- 四种常见的 POST-------- content-type数据提交方式
HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT 这几种.其中 POST 一般用来向服务端提交数据,本文 ...
- HTTP POST请求数据提交格式(转)
FROM: http://bbs.125.la/thread-13743350-1-1.html HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT ...
- 解析大型.NET ERP系统 数据审计功能
数据审计,英语表达是Audit,是追踪数据变化的过程,记录数据变化前后的值,供参考分析.通过设置,ERP可以追踪一个表的所有字段的变化,也可以只记录指定的字段的值变化.欧美企业每年都有独立的审计部门, ...
- 利用smarty模板(登录、有关信息操作等功能)
smarty模板前提是:前端和后端是分开的,所以肯定会有很多的后台页面,php页面和html页面是分开存储的. (1)登录页面的编写也是分两个页面(后台和前端) 1.首先是后台的php页面,很简单只要 ...
- 模拟Select-Options对象实现多项数据输入功能
模拟Select-Options对象实现多项数据输入功能 Select-Options对象可以同时输入多项值并将所输入数据存入内表以供程序使用,不过Select-Options的功能有一定的局限 ...
随机推荐
- jquery layer弹出层插件
http://www.51xuediannao.com/js/jquery/jquery_layer/layer.html
- zookeeper清除日志文件工具
zookeeper运行时间长了以后,日志会成为一个比较大的问题.比如作者压力测试hbase一周以后,zookeeper日志文件达到了10G的规模.由于zookeeper日志文件不能随意删除,因为一个长 ...
- eclipse 高亮配对的括号
在编辑代码框右键->preference,直接就可以看到Matching brackets highlights
- CentOS6.4 安装SSDB
1.安装 wget --no-check-certificate https://github.com/ideawu/ssdb/archive/master.zipunzip mastercd ssd ...
- HDU 4749 Parade Show(贪心+kmp)
题目链接 题目都看不懂,做毛线...看懂了之后就是kmp出,所有的匹配区间,然后DP可以写,贪心也可以做把,DP应该需要优化一下,直接贪,也应该对的,经典贪心问题. #include<iostr ...
- BZOJ3105: [cqoi2013]新Nim游戏 博弈论+线性基
一个原来写的题. 既然最后是nim游戏,且玩家是先手,则希望第二回合结束后是一个异或和不为0的局面,这样才能必胜. 所以思考一下我们要在第一回合留下线性基 然后就是求线性基,因为要取走的最少,所以排一 ...
- ios8 tableView设置滑动删除时 显示多个按钮
** * tableView:editActionsForRowAtIndexPath: //设置滑动删除时显示多个按钮 * UITableViewRowAction ...
- Hibernate条件查询
设计上可以灵活的根据 Criteria 的特点来方便地进行查询条件的组装.现在对 Hibernate的Criteria 的用法进行总结:Hibernate 设计了 CriteriaSpecificat ...
- 纪念逝去的岁月——C/C++字符串反转
几年前,我还不会写这个 输入:hello world 输出:dlrow olleh 代码 #include <stdio.h> #include <string.h> void ...
- nodejs之async异步编程
1.什么是异步编程? 异步编程是指由于异步I/O等因素,无法同步获得执行结果时, 在回调函数中进行下一步操作的代码编写风格,常见的如setTimeout函数.ajax请求等等. 示例: for (v ...
