繁体   English   中英

Textarea中的动态文本-获得价值

[英]Dynamic text in textarea - getting value

我在textarea中的文本/值不是静态的-我正在更改它。 我无法获得当前值。 例如1

<textarea>
Lorem ipsum
</textarea>
//it's defalut in html file

2

 Putting into textarea: Dolores is lorem ipsum 

警报仅显示1个版本(“ lorem ipsum”),而不显示第二个版本(“ Dolores is lorem ipsum”)。 我正在尝试在jquery中做到这一点:

var variable = $("#selector").val();
alert(variable);

我做错了什么?

编辑

我想将其捕获到变量中:)不提醒。 警报只是我的测试:)

$('textarea').change(function() {
  alert($(this).val());
});

尝试将alert()与事件关联:

$('textarea').change(
    function(){
        alert($(this).val());
    });

JS小提琴演示

参考文献:

错误在其他地方。

您使用的代码是正确的。 查看演示

var text = $('#textareaID').val();

$('#textareaID').change(function() {
  text = $(this).val();
});

每当您想要文本时,只需引用它即可:)

编辑:

如果您使用的是标签用户界面,请查看文档和事件管理:

Place This outside of bound scope:
var text = $('#textareaID').val(); OR var text = '';

$('#example').bind('tabsselect', function(event, ui) {
      // Objects available in the function context:
      // ui.tab anchor element of the selected (clicked) tab
      // ui.panel element, that contains the selected/clicked tab contents
      // ui.index zero-based index of the selected (clicked) tab
      // INSIDE HERE IS WHERE YOU CAN PUT THE CODE IN THE ABOVE EXAMPLE
      $('#textareaID').change(function() {
            text = $(this).val();
      });
});

注意:$('#example')将是保存选项卡和内容的父div

进一步的优化建议。

如果您认为$('#textareaID')通常会被调用,则您可能希望缓存对其的引用,以便选择器引擎不必在每个实例上都找到它,可以这样进行:

var textarea = $('#textareaID');
 var text = $('#textareaID').val();

对于此行:

var textarea = $('#textareaID');

确保它在$(document).ready(function(){});内部; 呼叫且元素存在

您可以通过以下方法进行检查:

var textarea = $('#textareaID') || false;

并像上面那样包装上面的代码:

$('#example').bind('tabsselect', function(event, ui) {
          // Objects available in the function context:
          // ui.tab anchor element of the selected (clicked) tab
          // ui.panel element, that contains the selected/clicked tab contents
          // ui.index zero-based index of the selected (clicked) tab
          // INSIDE HERE IS WHERE YOU CAN PUT THE CODE IN THE ABOVE EXAMPLE

          if(textarea) {
               textarea.change(function() {
                    text = $(this).val();
               });
          }
    });

希望这可以帮助!

听起来您正在尝试在值更改之前将.val()分配给变量。 您想使用.val()是正确的。 尝试这种的jsfiddle地看到,由所产生的差异variable.val() .text().html()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM