gpt4 book ai didi

javascript - jquery .val() += 成语

转载 作者:可可西里 更新时间:2023-11-01 01:55:18 28 4
gpt4 key购买 nike

这个 jQuery 片段最清楚的常用习惯用法是什么?

$('#someTextarea').val( $('#someTextarea').val() + someString );

将原始代码包装在一个单行函数中感觉很笨重

编辑:所以我可以传递一个函数,这很酷......但我的真正意图是用于 jsfiddles,我目前在其中做这样的事情:

function lazylog (str) { 
$('#ta').val( $('#ta').val() + str + '\n' );
}
// or
function lazylogPlain (str) {
document.getElementById('ta').value += str + '\n';
}

// view results of little experiments
lazylog( test1() );
lazylog( test2() );
lazylog( test3() );
// etc...

不知道那个上下文是否会产生不同的答案,或者只是让我看起来真的很懒惰,不想输入更少的内容。 console.log 不算,我要 textarea。

最佳答案

只是不要使用 jQuery。

document.getElementById('someTextarea').value += someString;

将更清晰、更快,并且与 jQuery 片段一样有效。如果你真的想使用 $ 选择器,你也可以只使用一个元素

$('#someTextarea')[0].value += someString; // least to type

其他可能性是 .val()带有函数的方法

$('#someTextarea').val(function(index, oldValue) { return oldValue + someString; })

或带有 .each() 的变体([几乎] 等同于 val() 在内部对文本输入所做的工作:

$('#someTextarea').each(function(){ this.value += someString; })

它们都需要一个你不喜欢的单行函数表达式,但它们的优点是可以为多个选定元素工作(并且不会因为没有匹配的元素而中断)并且它们还返回 jQuery 对象以保留链接功能。

关于javascript - jquery .val() += 成语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10487850/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com