美文网首页
总结下使用JQuery的$.ajax与$.each遇到的问题

总结下使用JQuery的$.ajax与$.each遇到的问题

作者: curioust | 来源:发表于2017-12-28 10:33 被阅读0次

相关:laravel 项目中(了解$.ajax才可能看懂以下)

  1. $.ajax 使用get传值,在控制器获取$_Get接收数据,这条传值的路由可以在chrome开发者工具的Network中查看到。
  2. 关于 $.ajax
function selectComment(status_id) { //a标签中通过onclick触发这个函数,带参数值
        $.ajax({
            type: "get",   //请求的方式,也有post请求
            url: "comment", //请求地址,拼接到当前地址后面
            dataType: "json", //json格式,控制器 返回的数据为json格式的。
            cache: false,  //设置为 false 将不缓存此页面
            data: {
                status_id: status_id,  //左右为键值对,在后台接收就是左边的名
                _token: "{{ csrf_token() }}"
            },
             success: function (Comment_content) { //参数可以理解控制器传回的值
                  //这里是处理接收到数据的地方
            }
  1. 关于 $.each,是在 success: 中进行操作数据的
//类似与php的foreach,dataReply是要遍历的数据,key/value是键值对,数据存在value中,在下面调用
$.each(dataReply, function (key, value) {
            cons += "<div>回复内容:"+ value.reply_content +"</div>";
 });
  1. 在这次编程中,为了给每个遍历出的数据加上不同的id值,使用了以下方式:
<ul id="comment_content{{ $status->id }}"></ul>
//{{ $status->id }}是获取laravel控制器传来的值,这样赋值给id,每一条遍历出来id值都不同
//在ajax中就遍历就分别加到对应的id值上了,类似于下:
var comments = "#comment_content" +  status_id ; //定义变量等于字符串+id值
$(comments).html(con); //使用html方法把con的值添加到对应的id值的位置
  1. 一个要注意的地方,关于 id 值的,单引号内部俩边的空格不能随便存在的,不能自动省略掉的。比如:
//"+item.id+"是参数,每次遍历带有不同值
 con += "<div id='reply_content"+item.id+"'></div>";①
 con += "<div id=' reply_content"+item.id+" '></div>";②

①和②的值是不同的,比如①是 reply_content1,那②就是 reply_content1 俩边带空格。

相关文章

网友评论

      本文标题:总结下使用JQuery的$.ajax与$.each遇到的问题

      本文链接:https://www.haomeiwen.com/subject/sadmgxtx.html