我有一个简单的TextArea和一个按钮
单击该按钮时,我需要wrap
(确切地说)带有红色div(border:solid 1px red
)的文本区域
p.s这个包装div必须是position:relative
,因为我需要添加未来的绝对定位元素
所以我写了这段代码:
$(".btn").on('click',function (){
$(".myTextArea").wrap($('<span/>', {
"class": 'msgAbsWrap',
"style": "position:relative;display:inline" /*it's inline by default ,I know*/
}));
});
但问题是它没有按原样包装它:
<击> JSBIN 击>
P.S。我使用chrome v 26。
(我的不好)我忘了从textArea中删除宽度(1000次测试后)。它应该是width:100%
。你现在可以试试吗?
答案 0 :(得分:1)
将范围的显示样式更改为display: inline-block;
$(".myTextArea").wrap($('<span/>', {
"class": 'msgAbsWrap',
"style": "position:relative; display:inline-block; width: 100%;"
}));
演示:JSBIN
答案 1 :(得分:1)
您可以执行这些更改以实现效果:
.msgAbsWrap {
border:solid 1px red;
display:inline-block;
width:100%;
position:relative;
}
$(".btn").on('click', function () {
$(".myTextArea").wrap($('<span/>', {
"class": 'msgAbsWrap'
}));
});
答案 2 :(得分:0)
将其更改为:
$(".btn").on('click',function (){
$(".myTextArea").attr('class', 'msgAbsWrap');
});
答案 3 :(得分:0)
这样做:
$(".btn").on('click',function (){
$(".myTextArea").wrap($('<div></div>', {
"class": 'msgAbsWrap',
"style": "position:relative;"
}));
});
选中此示例:jsbin