如何使用jQuery动态地使用.val()或.text()
How to distiguish when to use .val() or .text() dynamically using jQuery?
我需要能够知道何时使用val()
以及何时将text()
与jQuery一起使用。
如果我有一个具有相同类名的span
和input
,我需要在输入上应用val()
,在跨度上应用text()
以设置其值/内容。
这是我的 HTML 标记
<input class="att" name="some1" value="" type="text"><br>
<input class="att" name="some2" value="" type="text"><br>
<input class="att" name="some3" value="" type="text"><br>
<div class="att"></div><br>
<div id="test" class="att"></div><br><br>
<div id="cl">Click Me</div>
这是我尝试的,它没有按预期设置值
$(function(e){
$('#cl').click(function(e){
//Select any input that has the class "att" and apply the val() function
$('.att :input').val('123');
//Select any element that is not an input and apply the text() function
$('.att').not(':input').text('123');
//Search for an element with a known ID but apply `val()` if the element is input
$('#text .att :input').val('123');
//Search for an element with a known ID but apply `text()` if the element is not an input
$('#text .att').not(':input').text('123');
});
});
我还用我的代码创建了一个 jfiddle
如何根据元素类型正确应用 val() 和文本?
您使用了错误的选择器。这就是为什么你没有得到想要的结果。当您需要在其中搜索更多元素时,请在选择器之间留出空格,否则不要使用它们。
应该是.att:input
和
#text.att:input
和
#text.att
https://jsfiddle.net/gqxsdsyb/5/
试试 .is() 函数。你可以用它进行元素检测。例如
if ($(element).is("span")){/* set text */}
// or
if ($(element).is("input")){/* set val */}
相关文章:
- 如何将输入(type=text)从html表单传递到javascript函数
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 如何在salesforce aura闪电组件中使用jQuery.val()
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- 在文本区域中使用jQuery.text()保持换行符
- 如何防止在使用.val()时引入XSS漏洞
- 用Javascript添加带有#text的tr元素
- 当用户按下回车键时,自动在text区域/text中插入消息
- 从所有下拉菜单中选择val和text
- .val()返回未定义的.text返回随机代码
- JQuery val()、text() 和 html() 都返回一个空字符串
- jQuery .val()/.text() 不适用于特定的 html 块
- 如何使用jQuery动态地使用.val()或.text()
- jquery.如何等于.text().val()
- $(this:selected).val()或.text()不返回任何内容
- select标记中的.text()和.val()
- 无法获取输入字段的值,即使通过text()和val()方法
- 比较select.val()和span.text()后产生错误结果
- 不一致的text() val()选择和填充输入
- .val()或.text()查找表单中输入的值