从textarea到div的文本,宽度和高度有限

时间:2013-04-25 17:56:08

标签: javascript jquery html json textarea

我需要将textarea中的文本放入受宽度和高度限制的div中。 这是我的jsfiddle:http://jsfiddle.net/ptCoder/8XL7n/30/

例如:我的div宽度为100px,最大高度为100px。我需要在textarea中输入文本,这个文本将显示在div框中。

这是另一个例子,但效果不佳:Limit text length based on fitting text inside fixed width and height box

我需要有删除,退格和复制/粘贴等实现。

我尝试使用以下代码阻止身高:

if (currentHeight >= window.maxHeight) {  
    //alert('sim');
    var $th = $(this);
    $th.val($th.val().replace(/./, function(str) {
        return '';
    }));
    e.preventDefault();
}

但我有删除,退格和复制粘贴等错误...

另一个问题是文本在textarea中消失了......

2 个答案:

答案 0 :(得分:1)

为什么不能只使用max-width和max-height?

#target {
    max-width:200px;
    max-height:200px;
}

这应该限制目标的大小。

答案 1 :(得分:1)

你可以试试这个:

<script>
$(document).ready(function(){
    $('#inputData').keydown(function(){
    limitText($('#inputData'),100,100);
    });

    $('#inputData').keyup(function(){
        limitText($('#inputData'),100,100);
        });
});

function limitText(limitField, limitCount, limitNum) {
    if (limitField.val().length > limitNum) {
        limitField.val(limitField.val().substring(0, limitNum));
    } else {
        limitCount=limitNum - limitField.val().length;
    }
}
</script>
    <textarea maxlength="100" class="mycss" id="inputData" name="data" spellcheck=false wrap="physical"></textarea>