一尘不染

在textarea的占位符属性内插入换行符?

html

我尝试了几种方法,但是都没有用。有谁知道解决这个问题的妙招?

<textarea placeholder='This is a line \n this should be a new line'></textarea>

<textarea placeholder='This is a line     
should this be a new line?'></textarea> <!-- this works in chrome apparently -->

更新:在chrome中不起作用。只是文本区域的宽度。


阅读 370

收藏
2020-05-10

共1个答案

一尘不染

您可以做的是将文本添加为value,这要注意换行符\n

$('textarea').attr('value', 'This is a line \nthis should be a new line');

然后,您可以将其移除,focus然后将其重新应用(如果为空)blur。像这样

var placeholder = 'This is a line \nthis should be a new line';
$('textarea').attr('value', placeholder);

$('textarea').focus(function(){
    if($(this).val() === placeholder){
        $(this).attr('value', '');
    }
});

$('textarea').blur(function(){
    if($(this).val() ===''){
        $(this).attr('value', placeholder);
    }    
});

不是纯CSS也不 干净, 但是可以解决问题。

2020-05-10