我比Web开发中使用的语言更熟悉.Net但我正在使用Web应用程序。
我有一个下拉列表,当用户选择其他选项时,应根据所选的选项显示复选框。我的问题是,下载列表在加载时有一个默认选项;所以应该已经有复选框了。如果它是.Net,我将把我的代码放在Load()事件的复选框中,但是在Ajax / jquery中如何,因为我使用了("更改")?任何人都可以帮我解决类似于Ajax / jquery中的Load事件的问题吗?
这是我的代码:
$('.select-movie-status').on("change",function(){
var adStatus = parseInt(this.value);
$.ajax({
url: 'db.php',
type: 'GET',
dataType: 'JSON',
data: {action: 'getMoviesByStatus', id: adStatus},
success: function(data){
//alert(adStatus);
console.log(data);
var forChk=''; // putting the titles in a checkbox
for(var i=0; i<data.length;i++){
if(i==0){
forChk= '<div class="movieLists"><label class="checkbox-inline"><input type="checkbox" value="data[i].movieID" name="movie_array[i]"> ' + data[i].title + '</label></div>';
}
else{
forChk+= '<div class="movieLists"><label class="checkbox-inline"><input type="checkbox" value="data[i].movieID" name="movie_array[i]"> ' + data[i].title + '</label></div>';
}
}
$('#movieTitles').html(forChk);
}
});
});
下拉列表的代码:
<select class="half-form select-movie-status" name="section">
<option class="adStatus" value="1">Now Showing</option>
<option class="adStatus" value="2">Coming Soon</option>
</select>
答案 0 :(得分:0)
只需在文档准备就绪时手动触发更改
$(document).ready(function(){
$("select").change();
}
PS:ready就像winform上的onload方法
根据您更新的帖子,您需要拥有的只是
$(document).ready(function(){
$('.select-movie-status').change();
});
答案 1 :(得分:0)
$('.select-movie-status').on("change",function(){
var adStatus = parseInt(this.value);
$.ajax({
url: 'db.php',
type: 'GET',
dataType: 'JSON',
data: {action: 'getMoviesByStatus', id: adStatus},
success: function(data){
//alert(adStatus);
console.log(data);
var forChk=''; // putting the titles in a checkbox
for(var i=0; i<data.length;i++){
if(i==0){
forChk= '<div class="movieLists"><label class="checkbox-inline"><input type="checkbox" value="data[i].movieID" name="movie_array[i]"> ' + data[i].title + '</label></div>';
}
else{
forChk+= '<div class="movieLists"><label class="checkbox-inline"><input type="checkbox" value="data[i].movieID" name="movie_array[i]"> ' + data[i].title + '</label></div>';
}
}
$('#movieTitles').html(forChk);
}
});
}).change();
解决了它......它现在正在工作。谢谢!