我正在尝试将a应用于元素中的input.val()a text,span但是当我尝试对其进行检查时却console没有得到。
$("#sandbox-container span").on("click", function(e) {
$("#sandbox-container span").removeClass("selected_year");
$(this).attr("class", "selected_year");
var dateSelected = $(".selected_year").text();
var dateCat = $(".time_value").val(dateSelected);
console.log(dateSelected);
console.log(dateCat);
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="sandbox-container">
<span class="selected_year">2014</span>
<span>2018</span>
</div>
<input label="null" style="display: none;" class="time_value" maxlength="99" name="usp-category" type="text" value="">Run Code Online (Sandbox Code Playgroud)
上面给了我:
2014
(index):208 r.fn.init [prevObject: r.fn.init(1)]
Run Code Online (Sandbox Code Playgroud)
虽然我希望console.log(dateCat);给我2014
当您将值传递给函数时,您正在设置未获取元素的值,jQuery方法遵循链接模式,因此它们实际上返回元素本身,因此如果您想设置一个值然后检索它:
var dateCat = $(".usp-input-category").val(dateSelected);
console.log(dateCat.val())
Run Code Online (Sandbox Code Playgroud)
请注意,类选择器即$(".usp-input-category")返回一个数组。因此.val,在数组的构造函数中使用值运行将更改此类中所有元素的值。
.val当构造函数为空时,该函数将返回元素的值,而当使用值调用构造函数时,该函数将返回元素本身。
值得注意的是之间的差异.val(),.text()因为后者可能是您应该查看的功能。
.val 获取/设置输入元素的值.text 获取/设置元素的innerText | 归档时间: |
|
| 查看次数: |
1551 次 |
| 最近记录: |