使用javascript打印链接的名称
printing name of the link using javascript
我是javascript新手。我想在点击链接时在网页上打印链接的名称
我的尝试是:
<!DOCTYPE html>
<html>
<body>
<a href="#Foo" id="link1" onclick="myFunction()">Click me</a>;
<BR>
<a href="#Foo1" id="link2" onclick="myFunction1()">Click me1</a>
<p id="demo"></p>
<script>
function myFunction() {
var t = document.getElementById('#link1').href ; document.getElementById("demo").innerHTML =t;
}
function myFunction1() {
var t1 = document.getElementById('#link2').href
document.getElementById("demo").innerHTML = t1;
}
</script>
</body>
</html>
我想打印链接的名称,而不是hello和hello world。
您可以使用jquery来代替创建多个函数。
$(document).ready(function(){
$('a').on('click', function(){
$('#demo').html($(this).html());
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#Foo" id="link1" >Click me</a>;
<BR>
<a href="#Foo1" id="link2">Click me1</a>
<p id="demo"></p>
如果你已经在使用jQuery,你可能最好利用jQuery事件的click而不是内联的方法调用,让你的调用'不引人注目' (https://en.wikipedia.org/wiki/Unobtrusive_JavaScript)。像这样:
<a href="#Foo" id="link1">Click me</a>
<a href="#Foo1" id="link2">Click me1</a>
<p id="demo"></p>
$(document).ready(function(){
$('a').click(function(){
$('#demo').text($(this).html());
});
});
直接替换
document.getElementById("demo").innerHTML ="hello";
document.getElementById("demo").innerHTML = t;
也避免使用内联事件处理程序绑定事件。'
<body>
<a href="#Foo" id="link1">Click me</a>;
<BR>
<a href="#Foo1" id="link2">Click me1</a>
<p id="demo"></p>
<script>
$('a').on('click', function(e) {
e.preventDefault; // prevents the default action
var linkText = $(this).text();
$('#demo').text(linkText); // jQuery way
document.getElementById("demo").innerHTML = linkText; // Vanilla JS
});
</script>
</body>
此外,您最好将整个JS提取到一个单独的文件中,并在script标签中引用。
假设您想绘制锚的文本,请更新您的代码如下
function myFunction() {
document.getElementById("demo").innerHTML = document.getElementById("link1").innerHTML;
}
function myFunction1() {
document.getElementById("demo").innerHTML = document.getElementById("link2").innerHTML;
}
可以在函数调用中传递this
,可以有1个函数
标记
<a href="#Foo" id="link1" onclick="myFunction(this)">Click me</a>;
<BR>
<a href="#Foo1" id="link2" onclick="myFunction(this)">Click me1</a>
脚本function myFunction(element) {
document.getElementById("demo").innerHTML = element.innerHTML;
}
参考- http://plnkr.co/edit/C3qN5LCpOI11jwcvx9CD?p=preview
第一期您正在使用文本,而不是href属性。如果这是有意为之,那么从我所能告诉你的
来看,你的代码可以正常工作。document.getElementById("demo").innerHTML = document.getElementById('link1').innerHTML;
问题# 2您将值存储在变量中,而不是使用该值。这是您的代码中更可能出现的问题。由于该值只使用一次,我将直接使用该值,而不是存储它
document.getElementById("demo").innerHTML = document.getElementById('link1').href;
我还为一行函数
删除了不必要的jquery和变量存储。最后需要注意的是,在函数末尾添加return false将阻止链接尝试重定向。相关文章:
- 当链接javascript承诺时,如何处理then()函数中的条件
- 如何在grails中链接javascript引导程序方法
- 在PHP代码中单击链接javascript函数调用
- 随机链接javascript以忽略当前页面
- 如何链接javascript承诺和错误
- 在从ruby on rails中的资产管道加载的布局上链接Javascript函数
- 用链接 JavaScript 替换 HTML 的问题
- 突出显示当前链接 Javascript
- 如何在数组中添加超链接(Javascript)
- 有没有一种简单的方法可以在节点上双击 vis.js 创建超链接/javascript-action
- Facebook分享深度链接 - Javascript
- 链接 JavaScript 变量
- 在 AJAX 成功的新选项卡中打开链接 - Javascript
- window.打开一个新页面,然后单击新页面中的链接 - JavaScript
- 链接 JavaScript 函数
- 在 PHP 中链接 Javascript 文件
- 在拖动事件期间禁用链接 Javascript
- 文本框使用 if else 语句打开我的链接 JavaScript
- ajax脚本运行后指向页面的链接(javascript锚点?)
- 动态创建链接Javascript