I have the following code:
// I am filling the data of the "MultiSelectDialog_List" div using javascript like this:
var s = ''; // JSON string ----- YOU NEED TO ADD AN EXAMPLE OF S
var jsonData = JSON.parse(s);
for (var i = 0; i < jsonData.length; i++) {
// Hold the original list
$("#MultiSelectDialog_List").append("<input type='checkbox' id ='" + jsonData[i][idProp] + "' value='" +
jsonData[i][idProp] + "' data-value='" + jsonData[i][nameProp].toLowerCase() + "' > <label data-value ='" +
jsonData[i][nameProp].toLowerCase() + "' id ='lbl" + jsonData[i][idProp] + "'>" + jsonData[i][nameProp] + "</label> <br/>");
}
// Then I am using this script to hide some content:
var enteredText = $("#MultiSelectDialog_Search").val();
var ary = $("input[type='checkbox']:not([data-value*='" + enteredText.toLowerCase() + "'])");
for (var i = 0; i < ary.length; i++) {
$("#" + ary[i]["id"]).hide();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="multiSelectDialog" title="Select">
<input type="text" id="MultiSelectDialog_Search" name="MultiSelectDialog_Search" onchange="multiSelectDialog_Search_TextChanged()" />
<div id="MultiSelectDialog_List" data-value="">
<!--The data will goes here-->
</div>
<input type="hidden" name="MultiSelectDialog_Values" id="MultiSelectDialog_Values" />
<button id="MultiSelectDialog_Submit" onclick="multiSelectDialog_SubmitButton_Click()">Submit</button>
</div>
ary
的选择器对我不起作用。通常我喜欢使用jQuery的工具来操纵not
和data
,因此我创建了一个jQuery集合来存储原始列表,并在输入keyup
时操纵每个项目。 - GameTag