这是我目前的代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Test Page</title>
</head>
<body>
<a href="">Active</a>
<a href="">Inactive</a>
<a href="">Banned</a>
<input type="text">
</body>
</html>
我想要做的是当我点击活动时,文本框会有单词active等等。有没有办法做到这一点?
答案 0 :(得分:4)
您可以使用jquery执行此操作:
$(document).ready(function() {
$('a').click(function(e) {
e.preventDefault();
var text = $(this).text();
$('input[type=text]').val(text);
});
});
答案 1 :(得分:1)
在纯JavaScript中你可以这样做:
<body>
<a href="#">Active</a>
<a href="#">Inactive</a>
<a href="#">Banned</a>
<input id="foo" type="text">
</body>
var links = document.querySelectorAll( 'a' );
var input = document.getElementById('foo');
function setInput(event) {
event.preventDefault();
input.value = event.target.innerHTML;
};
for( var i=links.length; i--; ) {
links[i].addEventListener( 'click', setInput, false );
};
答案 2 :(得分:0)
没有JQuery以防万一有人想要它: http://jsfiddle.net/s0ds5rdy/
我建议把#34;#&#34;在href属性中。如果您不是preventDefault
,它会滚动到页面顶部,而如果您点击空白链接,浏览器可能会重新加载页面。
window.addEventListener("load", function () {
var allLinks = document.getElementsByTagName("a");
for (var i = 0; i < allLinks.length; ++i) {
allLinks[i].addEventListener("click", function (e) {
e.preventDefault();
document.querySelector('input[type=text]').value = e.target.innerHTML;
});
}
});