我有以下JS函数来提取所有以“#”开头的单词并替换它们的css样式。我想添加一个重定向到包含标记的所有项目的查询的URL。
如何保存剥离的标签,然后将其动态添加到每个标签的网址?
$this->form_validation->set_rules('email_id', 'Email ID/ Username', 'required|trim|xss_clean|valid_email|callback_check_duplicate_email[email_id]');
提前感谢您的帮助!
我希望完成的事情:
$('.find-hashtag').each(function(index) {
var str = $(this).html();
var edt = str.replace(/(^|\s)(#[A-Za-z]+)/ig, "$1<a href='{% url "hashtagged_item_list” *stored_value_goes_here* %}'>$2</a>");
$(this).html(edt);
});
答案 0 :(得分:0)
首先,将django生成的url存储为虚拟标记。因为django是运行服务器端而js是客户端,所以它们不能合并:
var url = '{% url "hashtagged_item_list" "dummy" %}';
然后,提取标签并替换“假”&#39;用它:
var edt = str.replace(/\b#([A-Za-z]+)/ig, function(match, tag) {
return '<a href="' + url.replace('dummy', tag) + '">#' + tag + '</a>');
});