我有一个隐藏的表单字段,用于存储 jQuery UI 可排序列表的值。
<input name="asw_options[asw_icon_order]" type="hidden" value="<?php echo $aswicons ?>" />
我有一个保存排序列表顺序的 jQuery 函数。
/* Social Networking Icon Sorter */
var itemList = $('#asw-sortable');
itemList.sortable({
update: function(event, ui) {
$('#loading-animation').show(); // Show the animate loading gif while waiting
opts = {
url: ajaxurl, // ajaxurl is defined by WordPress and points to /wp-admin/admin-ajax.php
type: 'POST',
async: true,
cache: false,
dataType: 'json',
data:{
action: 'item_sort', // Tell WordPress how to handle this ajax request
order: itemList.sortable('toArray').toString() // Passes ID's of list items in 1,3,2 format
},
success: function(response) {
$('#loading-animation').hide(); // Hide the loading animation
//$('#asw_options[asw_icon_order]').val(itemList.sortable('toArray').toString()); // Update hidden field with new values
$('input[name=asw_options[asw_icon_order]]').val(itemList.sortable('toArray').toString());
return;
},
error: function(xhr,textStatus,e) { // This can be expanded to provide more information
alert(e);
// alert('There was an error saving the updates');
$('#loading-animation').hide(); // Hide the loading animation
return;
}
};
$.ajax(opts);
}
});
存储的数据保存如下:
美味,Twitter,Facebook,Googleplus,Stumbleupon,Pinterest,LinkedIn,Youtube
一切运作良好。您重新排序字段并通过 jQuery 自动进行保存。
我的问题是存储在上面的隐藏字段,在 jQuery 成功完成订单的新保存后,我需要能够通过 jQuery 动态更新它。
这是一个 WordPress 插件,所以我需要更新隐藏的输入字段,因为如果用户点击“保存”按钮,它会保存旧值,因为这就是隐藏字段的初始“值”。
正如您在 jQuery 代码中看到的那样,我认为我可以将代码添加到“成功”函数中,然后更新隐藏字段,但是它不起作用。
任何帮助将不胜感激。