JS笔记
AJAX 笔记
完整的一次demo:
text() - 设置或返回所选元素的文本内容
html() - 设置或返回所选元素的内容(包括 HTML 标记)
val() - 设置或返回表单字段的值
JavaScript Code复制内容到剪贴板
- <script>
- function dig() {
- var a=document.form_main.usr.value; //这里的form_main是form的name值这里的usr是指定表单的name值
- var b=$("#test").val(); //JQuery获得表单的值
- var id=$(".dig").attr("id");
- var classid=$(".dig").attr("classid");
- var n=$(".dig").attr("n");
- $.ajax({
- type: "POST",
- url: "/test/a.php",
- dataType: 'html',
- data:{
- a : a,
- b : b,
- tit : "首页匿名用户"
- },
- success:function(data,status){
- switch(data){
- case"success":
- alert("提交成功,我们会尽快与您联系!");
- $("#phe").val("");
- $("#con").val("");
- break;
- case"Error":alert("提交失败,请联系网站管理员!");
- break;
- case"Empty":alert("必填项未写完全!");
- break;
- }
- },
- error:function(xhr, ajaxOptions, thrownError){
- console.log(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
- }
- })
- }
- </script>
注意点:
JS代码中,传递三个值:a b tit
传递类型是POST 大写
a.php接收传递过来的变量:
PHP Code复制内容到剪贴板
- <?php
- require('e/class/connect.php'); //引入数据库配置文件和公共函数文件
- require('e/class/db_sql.php'); //引入数据库操作文件
- $link=db_connect(); //连接MYSQL
- $empire=new mysqlquery(); //声明数据库操作类
- $a=(int)$_POST['a'];
- $b=(int)$_POST['b'];
- $tit=RepPostVar($_POST['tit']); //过滤为:不带空格或其他特殊符号
- //执行业务逻辑
- db_close(); //关闭MYSQL链接
- $empire=null; //注消操作类变量
- ?>
XML/HTML Code复制内容到剪贴板
- $("form.registerform").submit(); //JQ的提交表单操作
- $("#loginbox").serialize(); //JQ的ajax提交整个表单>data:$("#loginbox").serialize();
JavaScript Code复制内容到剪贴板
- <script>
- var form1 = $("#loginbox");
- $.ajax({
- type: "POST",
- url: "/test/a.php",
- dataType: 'html',
- data:form1.serialize(),
- success:function(data,status){
- console.log(data);
- // switch(data){
- // case"success":
- // alert("提交成功,我们会尽快与您联系!");
- // $("#phe").val("");
- // $("#con").val("");
- // break;
- // case"Error":alert("提交失败,请联系网站管理员!");
- // break;
- // case"Empty":alert("必填项未写完全!");
- // break;
- // }
- },
- error:function(xhr, ajaxOptions, thrownError){
- console.log(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
- }
- })
- </script>
JavaScript Code复制内容到剪贴板
- <script>
- $(document).on('click', '#AddFava', function(event) {
- $.ajax({
- url: '/e/member/doaction.php',
- type: 'post',
- data: {enews: 'AddFava', cid: 0, classid:[!--classid--], id:[!--id--]},
- })
- .done(function(data) {
- var msg = $(data).find("b").text();
- if (msg == '此收藏链接已存在') {
- alert('您已经收藏过此信息!');
- }else if( msg == '您还没登录!'){
- var r = confirm('您还没登录,请登录后操作!');
- if (r == true){
- self.location.href = "/e/member/login/?from=[!--titleurl--]";
- }
- }else{
- alert(msg);
- }
- })
- .fail(function() {
- alert('参数错啦!')
- });
- });
- </script>
设置ajax head头
JavaScript Code复制内容到剪贴板
- $.ajax({
- //请求类型,这里为POST
- type: 'POST',
- //你要请求的api的URL
- url: this.api.unFollow ,
- //是否使用缓存
- cache:false,
- //数据类型,这里我用的是json
- dataType: "json",
- //必要的时候需要用JSON.stringify() 将JSON对象转换成字符串
- data: params,
- //添加额外的请求头
- headers : {
- 'Token':'1233333'
- },
- // beforeSend: function(request) {
- // request.setRequestHeader("Test", "Chenxizhang");
- // },
- //请求成功的回调函数
- success: function(data){
- //函数参数 "data" 为请求成功服务端返回的数据
- if(res.hasOwnProperty("errorMsg")) {
- this.$toast("接口异常");
- }
- this.$toast("取消关注");
- this.isFollow = false;
- },
ajax 设置async为同步,默认是true异步,可以设定全局变量:
JavaScript Code复制内容到剪贴板
- var lawyers = [];
- function getLawyers(){
- $.ajax({
- type: "GET",
- url:"index.php?route=lawyer/report/getLawyers",
- async:false,
- dataType:"json",
- success:function(data){
- lawyers = data;
- return true;
- }
- });
- }
- getLawyers();
- console.log(lawyers);
PHP Code复制内容到剪贴板
- $.post("test.php", { "func": "getNameAndTime" },
- function(data){
- alert(data.name); // John
- console.log(data.time); // 2pm
- }, "json");
JavaScript Code复制内容到剪贴板
- var 类名 = {
- 变量名:变量值,
- 函数名:function(参数){
- 处理内容;
- }
- };