簡體   English   中英

發送函數變量到外部ajax調用

[英]send function variable to external ajax call

我有一個模態,帶有一個帶有圖標的文本元素

<span class="edit-comment-icon" title="Edit"></span>

當單擊圖標時,它將h3變成一個文本區域:

$('.edit-comment-icon').click(function(){
var _this = $(this),
    h3Tag =_this.prev()[0],
    h3Value = productComment;

    var input = $('<textarea />', {
        val: h3Value, 
        type: "text", 
        class:'uk-width-4-10',
        style: 'padding: 5px',
        rows: '5'
        });

    h3Tag.replaceWith(input[0]);
    $('.edit-comment-icon').hide();
    $('.save-comment-button').removeClass('uk-hidden').css('font-size','20px');
})

問題是我有一個外部ajax調用,正在使用另一組數據進行提交,但是我需要在他們擊中提交時將該文本區域中的值添加到該數據中。

因此,如果標頭說“ TEST”並且他們進行了編輯,然后在文本區域中將其更改為“ testing”並單擊保存/提交,則需要將“ testing”以及接收到的當前數據傳遞給我的ajax調用:

$('#saveButton').click(function(){
    $ajax({
      url: 'url',
      data: dataset /*but need to add textarea value to this*/
    });
})

我如何從另一個函數添加textarea值,以便在外部ajax調用中發送它?

只需使用針對modal元素內textarea元素的選擇器,例如,如果您的modal元素具有my-modal類,則可以使用.my-modal textarea

$('#saveButton').click(function(){
    var value = $('.my-modal textarea').val();
    var dataset = {
      myTextarea:value
      //and/or other properties
    };    
    //or if dataset is already created
    dataset.myTextarea = value;

    $ajax({
      url: 'url',
      data: dataset
    });
})

如果模態中有多個textarea,則需要向該textarea添加一個id或一些唯一的類

var input = $('<textarea />', {
  val: h3Value, 
  type: "text", 
  class:'for-h3 uk-width-4-10',
  style: 'padding: 5px',
  rows: '5'
});

然后在回調中

var value = $('.my-modal .for-h3').val();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM