jQuery noob:(this).replacewith 我做错了吗?
我对 jQuery 的了解越来越多,但在这里我陷入了困境。
我有一个代码可以在单击复选框时更改 div 的颜色,效果很好。
之后我希望能够更改焦点文本区域的内容,我尝试了以下操作:
//textarea
$("textarea").focus(function(){
if ($(this).contains('Skriv valg av headset her')){
$(this).replaceWith('');
});
但没有效果。我是否有一些语法错误或者我采取了错误的方法?
I've been learning more and more about jQuery but here I've become stuck.
I have a code to change the color of a div when a checkbox is cliked, that works fine.
After this I want to be able to change the contents of a textarea on focus, I tried this:
//textarea
$("textarea").focus(function(){
if ($(this).contains('Skriv valg av headset her')){
$(this).replaceWith('');
});
But there is no effect. Do I have some syntax errors or am I taking the wrong approach?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
有
$.contains
函数和:contains
选择器,但没有jQuery.fn.contains
。您正在寻找val
我相信:replaceWith 在这里也是错误的 - if 可以工作(我不应该相信它,因为它需要 DOM 元素或 HTML 文本)它会删除
textarea
元素(无论如何,最好使用remove
来完成)There's the
$.contains
function and the:contains
selector, but nojQuery.fn.contains
. You're looking forval
here I believe:replaceWith
is also wrong here - if that were to work (and it shouldn't I believe because it takes either a DOM element or a HTML text) it would remove thetextarea
element (which is better done withremove
anyway)试试这个:
Try this: