Javascript 不接受文本区域的更改

标签 javascript jquery

我想从 div 容器中获取所有 HTML,将其放入隐藏字段中的值中,然后使用相同的 CSS 样式但没有 textareas 标签将其显示给用户。

我想显示来自文本字段(textarea)的值,而不是文本区域!到目前为止一切顺利!

但是当文本区域中的信息发生更改时,我的 JavaScript 代码不会从该字段获取新信息。

我的代码有什么问题吗?

<!DOCTYPE html>
<html>
    <head>
        <title>Test</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <script src="//code.jquery.com/jquery-1.10.2.min.js"></script>
    </head>
    <body>
        <?php
        if(isset($_POST['save'])){
            $scrita = $_POST['hid'];
            $scritaInsert = strip_tags($scrita, '<p><n><nz><font><bl><br><r><chh>');
            echo $scritaInsert;
            exit; //just for the test
        }
        ?>
        <form method="POST">
            <input type="submit" name="save" class="btn-style" value="Save" id="submitContainer"/>
            <input type="hidden" name="hid" id="hid"/>
        </form>
        <div id="container">
            <p style="text-align: center;font-weight: bold;font-size: 23px;color: black;">CocaCola</p>
            <p style="text-align: center; color: black; font-size:16px; text-decoration: underline;">
                The address
            </p>

            <p style="font-weight: bold; color: black;">
                To: <textarea name="do" style="width: 920px; max-width: 100%; height: 18px;">CocaCola Company</textarea>
            </p>

            <p style="font-weight: bold; color: black;">
                Attention: <textarea  name="vnimanieto" style="width: 830px; max-width: 100%; height: 18px;">CocaCola Company</textarea>
            </p>

            <p style="text-align: center;font-weight: bold;font-size: 19px;color: black;">
                CONTRACT<br>
            <n style="text-align: center;font-size: 16px;color: black;">
                For transport
            </n><br>
            <nz style="text-align: center;">№<textarea name="nomer" style="width: 60px; max-width: 100%; height: 18px;">1737</textarea>
                Date:<textarea name="date" style="width: 90px; max-width: 100%; height: 18px;" id="date">25.05.2016</textarea>
            </nz>
        </p>
    </div>
    </body>
</html>
<script type="text/javascript">
    $('#submitContainer').click(function(){
         $('.picker').html('');
        var content = $('#container').html();
        $('#hid').val(content);
    });
</script>

最佳答案

我认为你的问题可能是 html 斜杠的类型:

尝试:

String.prototype.stripSlashes = function(){
    return this.replace(/\\(.)/mg, "$1");
}

$('#submitContainer').click(function(){
    $('.picker').html('');
    var content = $('#container').html();
    $('#hid').val(content.stripSlashes());
});

关于Javascript 不接受文本区域的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38262410/

相关文章:

javascript:在函数完成处理之前执行函数的顺序 - 嵌套函数返回值?

javascript - 如何访问元素的 cssText?

javascript - LightSwitch 通过延迟渲染重新设计自定义控件的问题

javascript - JS - 从另一个数组填充一个数组+修改值

javascript - jQuery中如何正确控制滑入/滑出功能?

Javascript Ajax 到 Flask request.get_json : TypeError: string indices must be integers

javascript - Wordpress ~ 如何在一个页面上显示多个 Google Chart?

jquery - 单击时切换,但单击后不会向下滑动

PHP 没有从 ajax 接收 formData 对象

jquery 更改和验证