详细分析使用AngularJS编程中提交表单的方式

发布时间:2017-04-12 09:44 来源:互联网 当前栏目:电脑编程入门

  这篇文章主要介绍了详细分析使用AngularJS提交表单的方式,AngularJS是非常热门的JavaScript库,文中展示了AngularJS在前端与后端的PHP进行交互的场景,需要的朋友可以参考下

  在AngularJS出现之前,很多开发者就面对了表单提交这一问题。由于提交表单的方式繁杂而不同,很容易令人疯掉……然而现在看来,依然会让人疯掉。

  今天,我们会看一下过去使用PHP方式提交的表单,现在如何将其转换为使用Angular提交。使用Angular来处理表单,对我而言,是一个“啊哈”时刻(译者:表示了解或发现某事物的喜悦)。即使它甚至都没有涉及多少Angular表层的东西,但是它却帮助用户看到表单提交之后的潜力,并且理解两种数据绑定方式。

  我们会使用jQuery平台来进行这个处理过程。所以所要做的工作首先使用javascript。我们会提交表单,展示错误信息,添加错误类,并且在javascript中显示和隐藏信息。

  之后,我们会使用Angular。在使用之前,我们要做大部分所需的工作,并且我们之前所做的很多工作会非常容易。让我们开始吧。

  简单的表单

  我们会关注两种提交表单的方式:

  旧方法:jQuery和PHP提交表单

  新方法:AngularJS和PHP提交表单

  首先看一下我们的表单,超级简单:

2015619102411460.jpg (800×400)

  形式要求

  实现页面无刷新表单处理

  输入姓名和超级英雄别名

  如果有错误,显示错误提示

  如果输入有误,将输入变成红色

  如果所有内容ok,显示成功提示

  文档结构

  在我们的展示中,仅需两个文件

  index.html

  process.php

  表单处理

  让我们新建一个PHP来处理表单。该页面非常小并且使用POST方式提交数据。

  处理表单:这对我们来说并不是那么重要的。你可以使用其他你喜欢的语言来处理你的表单。

  ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 // process.php   <?php   $errors = array(); // array to hold validation errors $data = array(); // array to pass back data   // validate the variables ====================================================== if (empty($_POST['name'])) $errors['name'] = 'Name is required.';   if (empty($_POST['superheroAlias'])) $errors['superheroAlias'] = 'Superhero alias is required.';   // return a response ===========================================================   // response if there are errors if ( ! empty($errors)) {   // if there are items in our errors array, return those errors $data['success'] = false; $data['errors'] = $errors; } else {   // if there are no errors, return a message $data['success'] = true; $data['message'] = 'Success!'; }   // return all our data to an AJAX call echo json_encode($data);
  • 1、
  • 2、
  • 3、
  • 4、
  • 5、
  • 6、
  • 7、
  • 8、
  • 9、
  • 10、
  • 11、
  • 12、
  • 13、
  • 14、
  • 15、
  • 16、
  • 17、
  • 18、
  • 19、
  • 20、
  • 21、
  • 22、
  • 23、
  • 24、
  • 25、
  • 1、
  • 2、
  • 3、
  • 4、
  • 5、
  • 6、
  • 7、
  • 8、
  • 9、
  • 10、
  • 11、
  • 12、
  • 13、
  • 14、
  • 15、
  • 16、
  • 17、
  • 18、
  • 19、
  • 20、
  • 21、
  • 22、
  • 23、
  • 24、
  • 25、