Maison > Questions et réponses > le corps du texte
Mon objectif est que la valeur de l'attribut href de la balise a d'origine soit fausse.
Je souhaite que l'utilisateur modifie la valeur de l'attribut href après avoir cliqué sur la balise a et mène à un lien. /XXX.XXX .html/?key='valeur de nom dans les données'&tit='valeur de titre dans les données'.
Les données transmises depuis l'arrière-plan sont un tableau [{"name": "haha", "title": "123"}, {"name": "haha", "title": "4567"} ], c'est les données,
puis utilisez ajax pour transmettre les données en arrière-plan, combinez les valeurs correspondantes sous la forme d'un lien, et transmettez-les à la valeur href de la balise a,
afin que l'utilisateur puisse accéder à chaque page en cliquant. La page correspondant à la balise a.
PS : je suis un débutant et je ne le comprends pas très bien. Le code que j'ai écrit est très problématique, mais je ne sais pas quoi faire, aidez-moi ! Agenouillez-vous et merci !
Voici la partie code :
<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>
De plus, j'ai une autre question pour vous, je ne vois pas ajax dans le navigateur Chrome.
Mais lorsque je l'ai vérifié dans Firefox, aucune erreur n'a été signalée. Puis-je utiliser Firefox pour voir si ajax a un effet à l'avenir ?仅有的幸福2017-05-27 17:44:32
$.ajax({
type: 'get',
url: 'aaa.json',
success: function(data){
// 遍历数据或者遍历 jQuery 对象
$('.xixi > a').each(function(i,link){
// 不明白你为什么要使用两次 for 循环查找数据;
// 你的数组是一个二维数组,可以使用 data[0].name 这种格式访问;
var name = data[i].name,
title = data[i].title;
// 绑定事件
$(link).off()
.on('click', function(e){
// 我建议你尽量使用单引号(除非有特殊规定),这是个好习惯!
$(this).attr('href','haha/form.html?key='+ name +'&title='+ title);
});
});
}
})
phpcn_u15822017-05-27 17:44:32
$(this).attr("href","haha/form.html?key="+zName+"&tit="+zTitle);
J'ai l'impression d'avoir écrit la mauvaise adresse. Veuillez voir si cela fonctionne.
迷茫2017-05-27 17:44:32
Tout d'abord, de quel type de tableau s'agit-il [{"name":"haha","title":"123"},{"name":"Haha","title"}:"4567"], qu'est-ce que c'est quoi cette partie ? "titre"} : "4567"
巴扎黑2017-05-27 17:44:32
Je ne comprends vraiment pas très bien ce que signifiait l'affiche~ J'ai juste fait une hypothèse approximative : le lien vers la balise a est obtenu via ajax, pas depuis le début~ Aussi quand j'ai vu le symbole $
, j'ai deviné que l'affiche utilisait jquery
. L'implémentation spécifique de mon code ci-dessous devrait être réalisable~$
符号,我就猜楼主用的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
Une fois la page chargée, exécutez directement ajax
. Après avoir obtenu le lien, modifiez les liens de toutes les balises a
. (L'auteur gère la section de résultats ajax
, la boucle for, je ne la comprends pas très bien~)
rrreee
De plus, où puis-je regarder ajax dans Chrome ? F12
Ouvrez le mode développeur, puis sélectionnez réseau
阿神2017-05-27 17:44:32
Le problème de l'épissage des chaînes derrière href n'est pas un problème ajax
淡淡烟草味2017-05-27 17:44:32
[{"name":"Hehe","title":"123"},{"name":"Haha","title":"4567"}]
Il s'agit d'un tableau unidimensionnel, parcourez les objets dedans, une seule boucle est nécessaire pour organiser le nom et le titre