jQuery noob :(这).replacewith am我做错了吗?

时间:2011-02-23 13:46:48

标签: jquery html replacewith

我一直在学习越来越多关于jQuery的知识,但在这里我已经陷入困境。

我有一个代码可以在复选框被cliked时更改div的颜色,这样可以正常工作。

在此之后,我希望能够在焦点上更改textarea的内容,我试过这个:

    //textarea
    $("textarea").focus(function(){
        if ($(this).contains('Skriv valg av headset her')){
         $(this).replaceWith('');
    });  

但没有效果。我是否有一些语法错误,或者我采取了错误的方法?

jsFiddle example here

2 个答案:

答案 0 :(得分:6)

$.contains个功能和:contains选择器,但没有jQuery.fn.contains。你在这里寻找val我相信:

$('textarea').focus(function(){
    var t = $(this);

    if(t.val().indexOf('Skriv valg av headset her') !== -1) {
        t.val('');
    }
});

replaceWith在这里也是错误的 - 如果可以工作(我不应该相信因为它需要DOM元素或HTML文本)它会删除{ {1}}元素(无论如何最好用textarea完成)

答案 1 :(得分:0)

试试这个:

//textarea
$("textarea").focus(function(){
    var $this = $(this); // Always cache your selector

    if ($this.contains('Skriv valg av headset her'))
    {
        $this.val('');
    }
});