javascript - 写的ajax没效果,求各位老哥看看问题所在...
迷茫
迷茫 2017-05-27 17:42:32
0
6
535

我的目的是,原本的a标签,href属性的值是假的,
想让用户在点击a标签后,改变href属性的值,导向一个连接,
这个链接是http://XXX.XXX.html/?key='data中name值'&tit='data中title值'这种形式。
而这个data后台传过来的数据,
里边是个数组[{"name":"呵呵","title":"123"},{"name":"哈哈","title":"4567"}],就是这样的数据,
然后要用ajax在后台传来数据的时候,将对应的值组合成链接的形式,传给a标签的href值,
使用户在点击的时候,跳转到每个a标签对应的页面。

PS:我是个新手,不是很懂,写的代码很有问题,可是我不知道该怎么办,求大佬们帮忙啊!跪谢了!

下面是代码部分:

<p class="xixi">

<a href="haha/form.html">1</a>
<a href="haha/form.html">2</a>
<a href="haha/form.html">3</a>
<a href="haha/form.html">4</a>
<a href="haha/form.html">5</a>

</p>

<script>

$.ajax({
    type:"get",
    url:"aaa.json",
    success:function(data){
        $(".xixi a").on('click','a',function(data){
           for(var i = 0;i < data.length;i++){
               for(var j = 0;j < data.length[i];j++){
                   var zName = data[i][j].name;
                   var zTitle = data[i][j].title;
                   $(this).attr('href','haha/form.html?key="+zName+"&tit="+zTitle"');
               }
           }
        });
    }
})

</script>

另外,还有个问题要问各位老哥,我在chrome浏览器那里看ajax,老是看不了。
但是我在firefox里边看,却没有报错,是不是以后都可以用firefox看ajax有没有效果?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(6)
仅有的幸福

雷雷

phpcn_u1582

$(this).attr("href","haha/form.html?key="+zName+"&tit="+zTitle);

感觉是地址写错了,你看看这样行不行。

迷茫

首先 这是个什么 数组 [{"name":"呵呵","title":"123"},{"name":"哈哈","title"}:"4567"] ,这部分是个什么鬼 ,"title"}:"4567"

巴扎黑

着实不是很明白楼主的意思~我就大概猜下:a标签的链接是通过ajax获得的,不是一开始就有的~另外 看到$符号,我就猜楼主用的jquery。具体的实现我下面的代码应该可以实现的~

页面加载后直接执行ajax,获得链接后修改所有a标签的链接。(楼主处理ajax结果这段,for循环,我看的不是很懂哦~)

<!doctype html>
<html>
<meta charset="utf-8">
<script src="./jquery-3.2.1.min.js"></script>

<body>
  <p class="xixi">

    <a href="#">1</a>
    <a href="#">2</a>
    <a href="#">3</a>
    <a href="#">4</a>
    <a href="#">5</a>
  </p>
</body>

<script>
  $(document).ready(function() {
    /*页面载入时候执行ajax*/
    $.ajax({
      type: "get",
      url: "aaa.json",
      success: function(data) {
        /*ajax成功或,改变所有的a标签的href*/
        for (var i = 0; i < data.length; i++) {
          for (var j = 0; j < data.length[i]; j++) {
            var zName = data[i][j].name;
            var zTitle = data[i][j].title;
            $(". xixi a").eq((i + 1) * (j + 1)).attr('href', 'haha/form.html?key="+zName+"&tit="+zTitle"');
          }
        }
      }
    })
  });

</script>

</html>

另外,chrome在哪里可以看ajax  F12打开开发者模式,然后选network

阿神

href后边的字符串拼接的问题,不是ajax的问题哦

淡淡烟草味

[{"name":"呵呵","title":"123"},{"name":"哈哈","title":"4567"}]
这是一个一维array,遍历里面的object,只需要一次循环就可以来组织name和title了

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!