0
リストから値を抽出し、ドロップダウンメニューを作成してフィルタとして使用するコードがあります。 selected.jsによってレンダリングされる選択メニューを取得しようとしていますが、問題を適切にレンダリングする必要があります。分割して表示され、デフォルトに戻ります。次のように私が持っているコードは次のとおりです。選択したjsの問題を初期化する
$(document).ready(function() {
$(".chosen-select").chosen({
no_results_text: "Oops, nothing found!",
width: "200px"
});
listID = '{e14db630-4d13-4349-9153-dc3d9128ca9b}';
var viewID = '{692ED354-A7C8-42FA-B780-CC71B5A6748D}';
//load paramsvar
allVars = $().SPServices.SPGetQueryString();
var filterFieldsParams = "";
$.each(allVars, function(objKey, objValue) {
if (objKey.substr(0, 11).toLowerCase() == "filterfield" || objKey.substr(0, 11).toLowerCase() == "filtervalue") {
filterFieldsParams += "&" + objKey + "=" + objValue;
}
});
function getAjaxFilter(name, internalName) {
$.ajax({
url: $().SPServices.SPGetCurrentSite() + '/_layouts/filter.aspx?ListId=' + listID + '&FieldInternalName=' + internalName + '&ViewId=' + viewID + '&FilterOnly=1&Filter=1' + filterFieldsParams,
success: function(data) {
$('#filterField' + internalName).html("").append($("<div></div>").append(data).find("select"));
$('#diidFilter' + internalName).addClass('chosen-select');
$("select[class=chosen-select] option:first").text("Filter By Sub Category");
$("select[class=chosen-select] option:first").attr('disabled', 'disabled');
//clear current onChange event
$("#diidFilter" + internalName).attr("onchange", '');
// add change event
$("#diidFilter" + internalName).change(function() {
FilterField(viewID, internalName, encodeURIComponent(this.options[this.selectedIndex].value), this.selectedIndex);
});
}
});
}
getAjaxFilter("Sub Category", "Sub_Category");
});