Birden fazla listeye sahip bir sayfadaki tek bir listeyi hedeflemek için AJAX çağrısına sahip komut dosyasının tamamı aşağıdadır. Özellik adım "ItemKey" olmasına rağmen "id" özelliğini kullanana kadar yukarıdaki diğer öğelerin hiçbiri benim için çalışmadı. Hata ayıklayıcıyı kullanarak
Chrome Hata Ayıklama
Seçilen seçenek öznitelikleri olduğunu görebildim: bir harita ile JQuery "id" ve değeri.
<html>
<head>
<script type="text/JavaScript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body>
<select id="List1"></select>
<select id="List2">
<option id="40000">List item #1</option>
<option id="27888">List item #2</option>
</select>
<div></div>
</body>
<script type="text/JavaScript">
//get a reference to the select element
$select = $('#List1');
//request the JSON data and parse into the select element
$.ajax({
url: 'list.json',
dataType:'JSON',
success:function(data){
//clear the current content of the select
$select.html('');
//iterate over the data and append a select option
$.each(data.List, function(key, val){
$select.append('<option id="' + val.ItemKey + '">' + val.ItemText + '</option>');
})
},
error:function(){
//if there is an error append a 'none available' option
$select.html('<option id="-1">none available</option>');
}
});
$( "#List1" ).change(function () {
var optionSelected = $('#List1 option:selected').attr('id');
$( "div" ).text( optionSelected );
});
</script>
</html>
İşte oluşturmak için JSON Dosyası ...
{
"List":[
{
"Sort":1,
"parentID":0,
"ItemKey":100,
"ItemText":"ListItem-#1"
},
{
"Sort":2,
"parentID":0,
"ItemKey":200,
"ItemText":"ListItem-#2"
},
{
"Sort":3,
"parentID":0,
"ItemKey":300,
"ItemText":"ListItem-#3"
},
{
"Sort":4,
"parentID":0,
"ItemKey":400,
"ItemText":"ListItem-#4"
}
]
}
Umarım bu yardımcı olur, beni bu kadar ileri götürdüğün için hepinize teşekkür ederim.