jq html 多一个引号,为什么jQuery模板会为某些字符串添加双引号
背景
我正在使用jQuery模板,ASP.Net MVC Razor視圖和Twitter.
問題
使用帶有一些字符串的jQuery模板會自動導致這些字符串被包含在“
細節
我創建了一個如下所示的jQuery模板:
before ${text.parseUserName().parseHashTag()} after${created_at}${prettyDate(created_at)}以下javascript格式化用戶名和哈希標記
String.prototype.parseUsername = function () {
return this.replace(/[@]+[A-Za-z0-9-_]+/g, function (u) {
var username = u.replace("@", "")
return u.link("http://twitter.com/" + username);
});
};
String.prototype.parseHashtag = function () {
return this.replace(/[#]+[A-Za-z0-9-_]+/g, function (t) {
var tag = t.replace("#", "%23")
return t.link("http://search.twitter.com/search?q=" + tag);
});
};
不幸的是,正在發生的事情是文本被包含在雙引號內.所以,
我期望得到的是:
before @user Hello World #hello #world after相反,我得到的是:
"before @user Hello World #hello #world after"為什么會自動插入雙引號?更重要的是,我該如何預防或修復它?
UPDATE
我已經確定只有當@包含在文本中時才會發生這種情況. . .只要包含用戶名,就會發生這種情況.
解
我不確定為什么這個解決方案有效,但確實如此.我稍后會更新這篇文章,因為我會更好地理解這個問題.
改變(不起作用)
before ${text.parseUserName().parseHashTag()} after致:(工作)
before {{html text.parseUserName().parseHashTag()}} after總結
以上是生活随笔為你收集整理的jq html 多一个引号,为什么jQuery模板会为某些字符串添加双引号的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android+notepad教程,An
- 下一篇: html仿微信滑动删除,使用Vue实现移