簡體   English   中英

將項添加到數組,然后序列化()javascript

[英]Add items to an array and then serialize() javascript

我正在嘗試在javascript中將項添加到數組中,然后序列化數組。 但是,它似乎沒有起作用。

請看下面的代碼,我做錯了什么?

var currentParent = $(this).closest('tr');
var items = $("input,select", currentParent);
items["_token"] = $('input[name=_token]').val();
var strData = items.serialize();

方法serialize需要應用於整個表單,而不是應用於數組中的特定項,如果要序列化現有對象或數組,則需要使用param代替

http://api.jquery.com/jquery.param/

舉個例子 :

<form action="">
   <input class="token" name="token" value="someValue" />
   <input class="someData" name="someData" />
</form>

<script>
    alert($('form').serialize()) // should show you someData=&token=someValue
</script>

https://jsfiddle.net/4cxa36vp/

... 要么 ...

var options = {
    token : $('input.token').val(),
    someData : null
}

alert($.param(options)) // should give you the same

https://jsfiddle.net/0ec8axot/

另外,請確保您的表單字段具有屬性name

序列化不適用於jQuery的表單

試試下面的javscript代碼片段。 我沒試過,但我認為它可能會奏效:

var currentParent = $(this).closest('tr');
var items = $(currentParent).find("input, select");
items["_token"] = $('input[name=_token]').val();
var strData = items.serialize();

請參閱以下小提琴鏈接: https//jsfiddle.net/nanncngr/

暫無
暫無

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

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