我正在尝试使用获取JSON和jQuery 代码来搜索数据库字段中的多个网址,然后显示所有超链接和分隔的网址。请参阅下面的屏幕截图中的红框。
后端代码为:
$('#jsonData').append('<h3>Community Plans</h3><a href="' + item.community_plan + '">' + item.community_plan + '</a>');
现在,在HTML页面上,这些网址显示为一堆没有空格而且没有超链接。请注意\:\将它们分开。数据库服务器内部,因此我无法提供链接,但您可以 SEE 在屏幕截图中显示数据库字段代码。
过去, If / Else语句代码用于搜索数据库字段是否具有“http”。 所以也许第1部分 - 搜索数据库字段是否有“http”,然后第2部分将它们显示为单独的URL。
//如果它有http然后超链接它。如果它不说http,则删除超链接并显示纯文本//
if (/http/i.test(item.community_plan)) {
$('#jsonData').append('<h3>Community Plans</h3><a href="' + item.community_plan + '">' + item.community_plan + '</a>');
}
else {
$('#jsonData').append('<h3>Community Plans</h3><p>' + item.community_plan + '</p>');
}
答案 0 :(得分:1)
你的问题不是很清楚。如果我理解正确,你想先解析它,然后检查它是否是一个URL来解析JSON输出。
这里有一些可以帮助你的伪代码:
item.community_plan.split("\\:\\").each(function(url) {
if(/^http/.test(url) {
// Starts with http, so should be a
$('#jsondata').append('<h3>other links</h3><a href="'+url+'">'+url+'</a>');
} else {
$('#jsondata').append('<h3>other links</h3><p>'+url+'</p>');
}
});
您可能想要查看网址是否实际以http(或https,如果适用)开头。测试前的^
负责处理。有关详细信息,请参阅http://www.w3schools.com/jsref/jsref_obj_regexp.asp。