我有这段ajax代码:
return $.ajax({
type: "POST",
url: "somefile.php",
cache:false,
data: { "yfilter": $("#yearFilter").serializeArray(),
"gfilter": $("#genreFilter").serializeArray() },
dataType:"json",
success: function(data){
alert("success");
}
这可以正常工作,但我需要动态传递数据参数。现在,我需要上述数据参数内容和单个字符串。
我应该如何动态传递它? / 如何将其存储在变量中并将其传递到 "data:" 字段中?
{ "yfilter": $("#yearFilter").serializeArray(),
"gfilter": $("#genreFilter").serializeArray() }
我尝试使用JSON.stringify,但由于数据是一个数组,所以无法正常工作。
年份和类型的数组直接来自jQuery下拉菜单。可以通过其#id进行选择,如"$(“#yearFilter”)"。这是选择表单元素。
<select multiple="multiple" name="yearFilter[]" class="filterChange" id="yearFilter">
我在基础层面所需要的是:
var someData = "";
if(...){
someData = { "yfilter": $("#yearFilter").serializeArray(),
"gfilter": $("#genreFilter").serializeArray() };
}
else if(...){
someData = "sampleString";
}
在Ajax调用中:
...
data: someData,
...
traditional:false
选项。 - charlietfl