[英]jquery get span value
我正在努力獲取span標記的值,然后在單擊時將該值傳遞到輸入字段中。
$( document ).ready(function() {
$( "input" ).on( "click", function() {
$( ".kb" ).toggle();
});
$( ".kb .row span" ).on( "click", function() {
var key = $('this').text();
alert(key)
$("body").find("input").append(key);
});
});
<input type="text" />
<div class="kb">
<div class="row">
<span>q</span>
<span>w</span>
<span>e</span>
<span>r</span>
<span>t</span>
<span>y</span>
<span>u</span>
<span>i</span>
<span>o</span>
<span>p</span>
<span>[</span>
<span>]</span>
</div>
<div class="row">
<span>a</span>
<span>s</span>
<span>d</span>
<span>f</span>
<span>g</span>
<span>h</span>
<span>j</span>
<span>k</span>
<span>l</span>
<span>;</span>
<span>'</span>
</div>
<div class="row">
<span>z</span>
<span>x</span>
<span>c</span>
<span>v</span>
<span>b</span>
<span>n</span>
<span>m</span>
<span>,</span>
<span>.</span>
<span>/</span>
</div>
您的代碼中完全有兩個錯誤,
除去由包圍引號this
參考
var key = $(this).text();
input [type = text]是一個void元素,您正在嘗試在其中添加文本,因此該文本無效。
$("input").val(key); //use .val() instead of .append()
完整的代碼是
$(".kb .row span").on("click", function() {
$("input").val($(this).text());
});
對於附加值,只需使用like即可,
$(".kb .row span").on("click", function() {
var text = $(this).text();
var elem = $('input');
elem.val(elem.val() + text);
});
this
不需要引號(否則您實際上是在尋找類似<this>
的元素):
var key = $(this).text();
您的$(this)
引用錯誤,應該使用.val()更改輸入值。
$(".kb .row span").on("click", function() {
var key = $(this).text();
alert(key)
$("body").find("input").val(key);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.