Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery用于存储textarea的初始值_Jquery - Fatal编程技术网

jQuery用于存储textarea的初始值

jQuery用于存储textarea的初始值,jquery,Jquery,在下面的脚本中,我希望保持HTMLSTROTOCPRE的初始值为静态,以便它不会更改。但是,编辑文本区域后,撤消操作将不再将原始文本粘贴回文本区域。我相信这是因为htmlstrotcpre是基于调用undoTOC函数时textarea的html(),而不是页面加载的初始值 如何存储初始值,以便始终将其粘贴回textarea(通过undoTOC函数) jQuery(文档).ready(函数() { var pageurl=jQuery(“#sample permalink”).text(); v

在下面的脚本中,我希望保持HTMLSTROTOCPRE的初始值为静态,以便它不会更改。但是,编辑文本区域后,撤消操作将不再将原始文本粘贴回文本区域。我相信这是因为htmlstrotcpre是基于调用undoTOC函数时textarea的html(),而不是页面加载的初始值

如何存储初始值,以便始终将其粘贴回textarea(通过undoTOC函数)


jQuery(文档).ready(函数()
{
var pageurl=jQuery(“#sample permalink”).text();
var htmlstrotcpre=jQuery(“#cb2_customTOC”).html();
var htmlstroc='目录\n';
HTMLSTROC+='
    \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
'; var checkTOC=函数() { jQuery(“#cb2_customTOC”).html(htmlStrTOC); } jQuery(#cb-toc-click”).bind(“click”,checkTOC); var undoTOC=函数() { jQuery(“#cb2_customTOC”).html(htmlstrotcpre); } jQuery(#cb toc undo”).bind(“单击”,undoTOC); 目录 .cb toc{颜色:蓝色;文本装饰:下划线;光标:指针;} 一些初始值 粘贴目录|撤消

http://localhost:8888/test/
在文本区域上使用
.val()
而不是
.html()
。然后将其存储在该文本区域的
.data()

保存:

$('#id').data('oldvalue',$('#id').val());
检索和重置:

$('#id').val($('#id').data('oldvalue'));
在文本区域上使用
.val()
而不是
.html()
。然后将其存储在该文本区域的
.data()

保存:

$('#id').data('oldvalue',$('#id').val());
检索和重置:

$('#id').val($('#id').data('oldvalue'));

在这里,您将找到我的解决方案:,顺便说一句,我将在下面更正您的代码

jQuery(document).ready(function()
{
    var pageurl = jQuery("#sample-permalink").text();
    var htmlStrTOCpre = jQuery("#cb2_customTOC").text();

    var htmlStrTOC  = '<h3>Table of Contents</h3>\n';
    htmlStrTOC += '<ul>\n';
    htmlStrTOC += '    <li><a href="'+pageurl+'">Introduction&nbsp;</a></li>\n';
    htmlStrTOC += '    <li><a href="'+pageurl+'2/">Introduction&nbsp;</a></li>\n';
    htmlStrTOC += '    <li><a href="'+pageurl+'3/">Conclusion&nbsp;</a></li>\n';
    htmlStrTOC += '</ul>';

    var checkTOC = function()
    {
        jQuery("#cb2_customTOC").val(htmlStrTOC);
    }

    jQuery("#cb-toc-click").bind("click", checkTOC);

    var undoTOC = function()
    {
        jQuery("#cb2_customTOC").val(htmlStrTOCpre);
    }

    jQuery("#cb-toc-undo").bind("click", undoTOC);

})


<div id="post_TOC" class="postbox ">
<h3 class="hndle"><span>Table of Contents</span></h3>
<div class="inside">
    <style>
    .cb-toc{color:blue;text-decoration:underline;cursor:pointer;}
    </style>
    <div class="inside">
        <textarea name="cb2_customTOC" id="cb2_customTOC">Default text</textarea>
        <span class="cb-toc" id="cb-toc-click">Paste TOC</span> | <span class="cb-toc" id="cb-toc-undo">Undo</span></p>
    </div>
</div>
jQuery(文档).ready(函数()
{
var pageurl=jQuery(“#sample permalink”).text();
var htmlstrotcpre=jQuery(“#cb2_customTOC”).text();
var htmlstroc='目录\n';
HTMLSTROC+='
    \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
'; var checkTOC=函数() { jQuery(“#cb2_customTOC”).val(htmlStrTOC); } jQuery(#cb-toc-click”).bind(“click”,checkTOC); var undoTOC=函数() { jQuery(“#cb2_customTOC”).val(htmlstrotcpre); } jQuery(#cb toc undo”).bind(“单击”,undoTOC); }) 目录 .cb toc{颜色:蓝色;文本装饰:下划线;光标:指针;} 默认文本 粘贴目录|撤消


http://localhost:8888/test/

在这里,您将找到我的解决方案:,顺便说一句,我将在下面更正您的代码

jQuery(document).ready(function()
{
    var pageurl = jQuery("#sample-permalink").text();
    var htmlStrTOCpre = jQuery("#cb2_customTOC").text();

    var htmlStrTOC  = '<h3>Table of Contents</h3>\n';
    htmlStrTOC += '<ul>\n';
    htmlStrTOC += '    <li><a href="'+pageurl+'">Introduction&nbsp;</a></li>\n';
    htmlStrTOC += '    <li><a href="'+pageurl+'2/">Introduction&nbsp;</a></li>\n';
    htmlStrTOC += '    <li><a href="'+pageurl+'3/">Conclusion&nbsp;</a></li>\n';
    htmlStrTOC += '</ul>';

    var checkTOC = function()
    {
        jQuery("#cb2_customTOC").val(htmlStrTOC);
    }

    jQuery("#cb-toc-click").bind("click", checkTOC);

    var undoTOC = function()
    {
        jQuery("#cb2_customTOC").val(htmlStrTOCpre);
    }

    jQuery("#cb-toc-undo").bind("click", undoTOC);

})


<div id="post_TOC" class="postbox ">
<h3 class="hndle"><span>Table of Contents</span></h3>
<div class="inside">
    <style>
    .cb-toc{color:blue;text-decoration:underline;cursor:pointer;}
    </style>
    <div class="inside">
        <textarea name="cb2_customTOC" id="cb2_customTOC">Default text</textarea>
        <span class="cb-toc" id="cb-toc-click">Paste TOC</span> | <span class="cb-toc" id="cb-toc-undo">Undo</span></p>
    </div>
</div>
jQuery(文档).ready(函数()
{
var pageurl=jQuery(“#sample permalink”).text();
var htmlstrotcpre=jQuery(“#cb2_customTOC”).text();
var htmlstroc='目录\n';
HTMLSTROC+='
    \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
  • \n'; HTMLSTROC+='
'; var checkTOC=函数() { jQuery(“#cb2_customTOC”).val(htmlStrTOC); } jQuery(#cb-toc-click”).bind(“click”,checkTOC); var undoTOC=函数() { jQuery(“#cb2_customTOC”).val(htmlstrotcpre); } jQuery(#cb toc undo”).bind(“单击”,undoTOC); }) 目录 .cb toc{颜色:蓝色;文本装饰:下划线;光标:指针;} 默认文本 粘贴目录|撤消


http://localhost:8888/test/

问题是一旦编辑了文本区域,textarea的内容就会更改val()。我需要将textarea的初始内容存储在一个常量中,以便在以后更改textarea内容时不会受到影响。但是您创建了空的
textarea
(没有aby文本可复制)。但它可能并不总是空的。一旦它与一个值一起保存,它将成为下一页加载时的初始值。我更新了问题,将textarea的初始值设置为任意值。我问题的核心是"如何将textarea的初始内容存储在静态变量中,使其不受未来对textarea内容的更改的影响?是的,但在开始时您将其设置为空,以便通过
undoTOC
函数复制和粘贴空值,这就是为什么您看不到任何更改,并且您可能认为您的代码是错误的。请检查我的答案以了解更多信息工作示例问题是,一旦编辑文本区域,文本区域的内容就会更改val()。我需要将文本区域的初始内容存储在一个常量中,以便在以后更改文本区域内容时不会受到影响。但是您创建了空的
textarea
(没有要复制的aby文本)。但它可能并不总是空的。一旦它与一个值一起保存,它将成为下一页加载时的初始值。我更新了问题,将textarea的初始值设置为任意值。我问题的核心是"如何将textarea的初始内容存储在静态变量中,使其不受未来对textarea内容的更改的影响?是的,但在开始时您将其设置为空,以便通过
undoTOC
函数复制和粘贴空值,这就是为什么您看不到任何更改,并且您可能认为您的代码是错误的。请检查我的答案以了解更多信息工作示例问题是,一旦您在文本区域中键入,粘贴和撤消将不再工作。为什么?请立即尝试更新的代码,使用
val()
代替
text()
html()
设置值问题是,一旦您在文本区域中键入,粘贴和撤消将不再工作。为什么?现在请尝试更新代码,使用
val()
代替
text()
html()
设置值