Javascript 使用Jquery附加到href标记?
我正在学习使用Jquery,我能够从servlet中的db中获取数据,然后将json数组发送给我的ajax函数。现在在我的ajax函数中,我能够提取这些值,我的目标是将数据添加到我的href标记中,该标记位于我的标记中。现在,我有点困惑——我想动态创建href链接,并将ajax中的值附加到href链接。我该怎么做呢Javascript 使用Jquery附加到href标记?,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我正在学习使用Jquery,我能够从servlet中的db中获取数据,然后将json数组发送给我的ajax函数。现在在我的ajax函数中,我能够提取这些值,我的目标是将数据添加到我的href标记中,该标记位于我的标记中。现在,我有点困惑——我想动态创建href链接,并将ajax中的值附加到href链接。我该怎么做呢 $(document).on(“click”、“#check”,function(){//当对ID为“somebutton”的元素调用HTML DOM“click”事件时,执行以下
$(document).on(“click”、“#check”,function(){//当对ID为“somebutton”的元素调用HTML DOM“click”事件时,执行以下函数。。。
//event.preventDefault();
$.ajax({
键入:“获取”,
网址:“HomeServlet”,
成功:功能(数据){
控制台日志(数据);
$。每个(数据、函数(键、值){
console.log(value.value1);//警告Sevlet的JSONObject中设置的值。
console.log(value.value2);
})
},
//数据类型:“json”,
contentType:“应用程序/json”
});
返回false;
});代码>
。垂直菜单{
宽度:200px;
}
.垂直菜单a{
背景色:#eee;
颜色:黑色;
显示:块;
填充:12px;
文字装饰:无;
}
.垂直菜单a:悬停{
背景色:#ccc;
}
.垂直菜单a.激活{
背景色:#4CAF50;
颜色:白色;
}
API名称:
API端点:
API版本:
可访问:
互联网
VPN
您可以使用+=
,它实质上会增加当前值。例如
var one = 'string one',
two = 'string two';
one += ' is better than ';
console.log(one); //this will return string one is better than.
使用+=
获取当前值,然后添加指定值。在您的情况下,假设您的数据返回如下所示:
var array = ['string', 'one', 'string', 'two'],
myStr = '';
array.each(function(i, v)
{
myStr += v;
})
console.log(myStr) // will return stringonestringtwo
希望这是有意义的:)所以最好的方法就是创建一个div,并给它一个id,您希望代码也附加这个id,然后在jquery中访问它的对象。例:
Html
Javascript-Jquery
$('#idtoappendto').html = `<a href="#data">Generated Html</a>`;
$('idtoappendto')。html=`;
$(文档)。在(“单击”上,“#检查”,函数(){//当HTML DOM“单击”时
事件在ID为“somebutton”的元素上调用,执行以下操作
功能。。。
//event.preventDefault();
$.ajax({
键入:“获取”,
网址:“HomeServlet”,
成功:功能(数据){
控制台日志(数据);
$。每个(数据、函数(键、值){
$(“.vertical menu”).append(“”)
})
},
//数据类型:“json”,
contentType:“应用程序/json”
});
返回false;
});
这是您的解决方案
$(document).on(“click”、“#check”,function(){//当对ID为“somebutton”的元素调用HTML DOM“click”事件时,执行以下函数。。。
//event.preventDefault();
$.ajax({
键入:“获取”,
网址:“HomeServlet”,
成功:功能(数据){
控制台日志(数据);
$。每个(数据、函数(键、值){
console.log(value.value1);//警告Sevlet的JSONObject中设置的值。
console.log(value.value2);
})
},
//数据类型:“json”,
contentType:“应用程序/json”
});
返回false;
});
//-----示例代码---------------
风险值数据=[{
值1:“http://www.google.com",
价值2:“谷歌”
},{
值1:“http://www.yahoo.com",
价值2:“雅虎”
},{
值1:“https://jsfiddle.net",
值2:“JSFiddle”
},{
值1:“https://stackoverflow.com",
值2:“堆栈溢出”
},{
值1:“https://codepen.io/",
值2:“代码笔”
}];
var verticalMenu=$(“.vertical menu”).children();
$。每个(数据、函数(键、值){
$(垂直菜单[key]).attr('href',value.value1).text(value.value2);
});代码>
。垂直菜单{
宽度:200px;
}
.垂直菜单a{
背景色:#eee;
颜色:黑色;
显示:块;
填充:12px;
文字装饰:无;
}
.垂直菜单a:悬停{
背景色:#ccc;
}
.垂直菜单a.激活{
背景色:#4CAF50;
颜色:白色;
}
API名称:
API端点:
API版本:
可访问:
互联网
VPN
像这样:
data.forEach(function(i){
$('.vertical-menu a').attr('href',i);
}
告诉我们您尝试了什么,您的错误日志,…:-假设我的值中有许多值,并且我希望在我的div标记中动态创建尽可能多的href链接。我该怎么做呢?在value对象中创建三个内部值,分别是divID、href、title和`$(“#“+value.divID)。append(“”)`
$(document).on("click", "#check", function() { // When HTML DOM "click"
event is invoked on element with ID "somebutton", execute the following
function...
//event.preventDefault();
$.ajax({
type: "GET",
url: "HomeServlet",
success: function(data) {
console.log(data);
$.each(data, function(key, value) {
$(".vertical-menu").append("<a href='#"+value.value1+"'>"+value.value2+"</a>")
})
},
//dataType: "json",
contentType: "application/json"
});
return false;
});
data.forEach(function(i){
$('.vertical-menu a').attr('href',i);
}