jQuery - 允许仅更改textarea中文本的某些部分

时间:2015-12-03 10:39:41

标签: jquery

例如,我有一个带文字的文本区域。

<textarea id="response" name="response" class="form-control" maxlength="160">Text1. Text2</textarea>

我需要允许用户仅编辑Text1Text2不应该被更改。

2 个答案:

答案 0 :(得分:0)

你可以将text1设为固定,并且可以编辑text2,但你必须将text1作为span,你可以看到示例HERE

它可能对你有帮助。

答案 1 :(得分:0)

您可能最好尝试使用CSS和contenteditable标签创建伪文本区域,并在提交表单时从中提取数据(假设它是)。这是一个例子:

<html>
<head>
    <style>
        #custom-textarea {
            border: solid 1px #999999;
            resize: both;
            overflow: auto;
        }

        #custom-textarea *:read-write:focus {
            outline: none;
        }

        #custom-textarea span {
            pointer-events: none;
        }
    </style>
    <script src="jquery-1.11.3.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            $("#custom-textarea span").on("focus", function(){
                $(this).parent().trigger("focus");
            });
        });
    </script>
</head>
<body>
    <div style="width: 165px;">
        <div id="custom-textarea" tabindex="-1">
            <span contenteditable="true">This section is editable.</span>
            This section is not editable.
        </div>
    </div>
    <textarea>This section is editable. This section is still editable.</textarea>
</body>
</html>