试图转义href标记中的引号

Trying to escape quotes in a href tag

本文关键字:转义 href      更新时间:2023-09-26

我有以下代码行,

$("#busdata").append("<div><a href="url">" + data.response.results[i].webUrl + "</a></div>");

我基本上想用"data.response.results[I].webUrl"来代替url字符串,但我不太确定如何正确地转义引号。

您可以通过用'"替换引号来转义引号或者只使用单引号-'

因此"<div><a href="url">"变成"<div><a href='"url'">""<div><a href='url'>"

单引号'和字符串连接符+

$("#busdata").append("<div><a href='"+ data.response.results[i].webUrl +"'>" + data.response.results[i].webUrl + "</a></div>");

您可以将其存储在变量中:

var url = data.response.results[i].webUrl;
$("#busdata").append("<div><a href='"+url+'">" + url + "</a></div>");

希望这能有所帮助。

您的语法错误。你需要转义引号。将您的<a href="url">更改为<a href='"url'">,如下所示:

$("#busdata").append("<div><a href='"url'">" + data.response.results[i].webUrl + "</a></div>");

或者,如果你觉得这有点困难,你可以用'":

$("#busdata").append('<div><a href="url">' + data.response.results[i].webUrl + "</a></div>");

否则,如果您试图从响应中添加URL:

$("#busdata").append("<div><a href='"" + data.response.results[i].webUrl + "'">" + data.response.results[i].webUrl + "</a></div>");

如果url是一个变量$("#busdata").append("<div><a href='" + url +"'>" + data.response.results[i].webUrl + "</a></div>");

如果你想自己写

$("#busdata").append("<div><a href='url'>" + data.response.results[i].webUrl + "</a></div>");

只需按照我的示例执行即可:

var a = $('<a />', {
href: 'url here',
text: 'text here'
}); $('body').append(a);

您可以这样做:

 $("#busdata").append("<div><a href='"+data.response.results[i].webUrl +"'>" + data.response.results[i].webUrl + "</a></div>");

由于要附加的字符串使用双引号,因此可以在href属性中的变量周围使用单引号,然后添加该变量。

这最容易实现的方法是不首先通过将字符串粉碎来构建HTML。

$("#busdata").append(
    $("<div />").append(
        $("<a />").attr("href", data.response.results[i].webUrl)
    )
);

不需要转义引号

$("#busdata")
.append("<div><a href=" 
  + data.response.results[i].webUrl 
  + ">" 
  + data.response.results[i].webUrl 
  + "</a></div>"
);