【发布时间】:2018-08-22 04:16:26
【问题描述】:
这可能是一个简单的问题,但我想不通:我正在尝试使用 JavaScript/jQuery 将 href 更改为变量。我正在使用Bootstrap Collapse Plugin。我的代码基本上是这样的:
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<div class="container">
<h2>Collapsible Panel</h2>
<p>Click on the collapsible panel to open and close it.</p>
<div class="panel-group">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" href="#collapse1">Collapsible panel</a>
</h4>
</div>
<div id="collapse1" class="panel-collapse collapse">
<div class="panel-body">Panel Body</div>
<div class="panel-footer">Panel Footer</div>
</div>
</div>
</div>
</div>
但是面板是动态创建的,在某些时候,我必须更改 id 和 href。例如:
<a href="#8d70b67c-c667-4fe3-a936-cdd0fc2a1f36">...</a>
到
<a href="#361cd655-ad54-4cd5-aeb7-a3da9553c1e9">...</a>
如果我使用 Javascript
var link = newId();
//newId is part of the plugin, but is based on the previous href
element.href = "#" + link;
html变成了
<a href="#localhost:1234/#361cd655-ad54-4cd5-aeb7-a3da9553c1e9">...</a>
(这是页面的完整地址,带有锚点)
它不再起作用了。但是像这样硬编码会起作用:
element.href = "#361cd655-ad54-4cd5-aeb7-a3da9553c1e9";
我尝试了很多东西,但总是得到相似的结果。
【问题讨论】:
-
newId()返回什么? -
点击功能使用的javascript是什么?
-
@SLaks newId() 返回类似 361cd655-ad54-4cd5-aeb7-a3da9553c1e9 的字符串
-
@ltjfansite 就我而言,这是由 jQuery 插件完成的。
标签: javascript jquery html href