簡體   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