我有一个文本框,其值我想根据锚标记的内部文本进行设置。换句话说,当有人点击此锚点时:
<a href="javascript:void();" class="clickable">Blah</a>
我希望我的文本框中填充“Blah”文本。这是我目前使用的代码:
<script type="text/javascript">
$(document).ready(function(){
$("a.clickable").click(function(event){
$("input#textbox").val($(this).html());
});
});
</script>
在我的html中有一个带有“clickable”类的锚标签列表和一个带有id“textbox”的文本框。
我用代码替换上面的代码,只显示带有$(this).html()的javascript警报,它似乎显示正确的值。我还将$(this).html()更改为硬编码字符串,并正确地输入文本框值。但是当我将它们组合起来时,文本框就会清除掉。我做错了什么?
答案 0 :(得分:52)
我编写了这段代码片段并且工作正常:
<a href="#" class="clickable">Blah</a>
<input id="textbox">
<script type="text/javascript">
$(document).ready(function(){
$("a.clickable").click(function(event){
event.preventDefault();
$("input#textbox").val($(this).html());
});
});
</script>
也许你忘记给你的链接提供一个“可点击”的课程名称?
答案 1 :(得分:14)
要在jQuery中指定id为ёtextboxё的文本框的值,请执行以下操作
$("#textbox").val('Blah');
答案 2 :(得分:6)
请注意,在选择器中为tagName添加前缀比使用id慢。 在你的情况下,jQuery将获得所有输入,而不仅仅是使用getElementById。 只需使用$('#textbox')
答案 3 :(得分:4)
要在JQuery中指定id为“textbox”的文本框的值,请执行以下操作
$(“#textbox”)。get(0).value =“blah”
答案 4 :(得分:1)
关注redsquare:你不应该在href属性javascript代码中使用“javascript:void();” - 这是错误的。更好地使用例如href =“#”然后在你的事件处理程序中作为最后一个命令:“return false;”。甚至更好 - 在href中使用正确的链接 - 如果用户禁用了javascript,则Web浏览器会跟随链接 - 在这种情况下,您的网页应该使用填充了该链接值的输入重新加载。