FF firebugウィンドウの場合、これがコールドフュージョンアクションページに渡されていることがわかります。
RowOrder[]=&RowOrder[]=row_5&RowOrder[]=row_2&RowOrder[]=row_1&RowOrder[]=row_3&RowOrder[]=row_4&RowOrder[]=row_6&RowOrder[]=row_7&RowOrder[]=row_8&RowOrder[]=row_11
更新された並べ替え順序を取得するには、これをループする必要がありますが、[]が原因で、問題が発生しています。テーブルを更新できるように、これをループするにはどうすればよいですか?これは簡単な部分だと思っていましたが、明らかに何かが欠けています。
+ jqueryプラグイン(http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/)を使用しています。+
送信されたデータをループするために使用しているコードは次のとおりです。
<cfif StructKeyExists(form, "RowOrder")>
<!---<cfset variables.Order = ReReplaceNoCase(form.RowOrder, "(&){0,1}row_\[\]=", ",", "all") />--->
<cfset variables.Order = ReplaceNoCase(form["RowOrder[]"],"row_","","all")>
<cfloop from="1" to="#ListLen(variables.Order)#" index="index">
<cfquery name="qryOrder" datasource="#dsn#">
update SystemTypes
set Order = <cfqueryparam value="#index#" cfsqltype="cf_sql_integer" />
where WETypeNum = <cfqueryparam value="#ListGetAt(variables.Order, index)#" cfsqltype="cf_sql_integer" />
</cfquery>
</cfloop>
</cfif>
+私が使用しているajaxコードは次のとおりです。
$("#RowOrder").tableDnD({
onDrop: function(table, row) {
var RowOrderData = $.tableDnD.serialize();
$.ajax({
type: 'POST',
url: '../../ajax/UpdateListingOrder.cfm',
cache: false,
data: RowOrderData
});
}
});
+
+は、質問の投稿後に追加された情報を示します