2011-08-10 55 views
2

我找不出這個語法。如何使用jQuery向序列化表單值添加內容?

這裏是我的代碼:

$('select[id^="lookup_"]').change(function() { 
    var d = $("#lookupform").serializeArray(); 

      // This is the problem line 
      d.push("field=" + $(this).id); 

    hash = { type: "POST", url: "/map/details", data: d }; 
    $.ajax(hash); 
    return false; 
}); 

我知道問題行是完全錯誤的。我基本上想讓服務器端知道提交來自哪裏。誰能幫忙?

回答

1

這應該這樣做:

d.push({ field: this.id }); 
1

你非常非常接近。這將工作:

d.push("field=" + this.id); 

或者是與其他數組元素是一致的:

d.push({field: this.id}); 
+0

順便說一句,你確定要使用[ '.serializeArray()'](http://api.jquery.com/serializeArray)而不是['.serialize()'](http://api.jquery.com/serialize)? –

+0

我絕對應該使用.serialize()來代替,但我不確定如何序列化單個條目,也不知道要使用什麼對象。 – AKWF