我希望 JavaScript 在我的 div 中写入特定的代码行,以便在特定日期按下按钮时激活链接。
Javascript:
function todaydate() {
var d=new Date();
d.setDate("Oktober 29, 2016")
document.getElementById('Vign1').innerHTML ="<a href="layout.php">";
}
按钮的 HTML:
<div id="Vign1">
<button onclick="todaydate();">
</button>
</a>
</div>
所以我们的想法是,如果在 f.e. 处单击按钮。 2016 年 10 月 29 日,我的 javascript 添加了代码行来完成链接并激活它。有人可以帮助我吗,为什么它不起作用?
编辑:
日期检查不起作用。有人可以帮忙吗?它只能在特定日期或之后激活。但它不会工作.. 我当前的代码:
function todaydate() {
var submitDate = new Date();
var oct30 = new Date("October 30, 2016 00:25:00 ");
if (oct30.getTime() == submitDate.getTime()) {
document.getElementById('link').setAttribute('href', 'layout.php');
}
else if (oct30.getTime() != submitDate.getTime()) {
document.getElementById('link').setAttribute('href', 'nichtverfuegbar.php');
}
最佳答案
这里有几个问题:
document.getElementById('Vign1').innerHTML ="<a href="layout.php">";
这是行不通的,因为你的 html 字符串中嵌套了双引号。一定是这样的:
document.getElementById('Vign1').innerHTML ="<a href='layout.php'>";
但是,这也不是您想要的。这将仅使用该开始标记覆盖 div 中的所有 html,包括按钮、结束标记等。
此外,当您尝试编写链接时,其中不会包含任何文本 - 别人怎么会看到要点击的内容?
这是一种方法。 (您也可以让 onclick 函数将整个链接添加为元素,如果这更适合您的用例。)注意 - 您仍然没有编写任何实际的日期检查逻辑。我假设你接下来会谈到这个。在添加之前,此按钮将始终创建一个链接。
function todaydate() {
var d = new Date();
d.setDate("Oktober 29, 2016")
document.getElementById('link').setAttribute('href', 'layout.php');
// optional, for demo purposes
document.getElementById('link').innerText = 'A link!';
}
<div id="Vign1">
<button onclick="todaydate();">Click me!
</button>
<a id="link">Not a link</a>
</div>
关于javascript - 用onclick将一行代码写入div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40323369/