選択リストでライブ変更イベントが発生したときに他の関数を呼び出す JQuery 関数を使用しています。これが私のJQuery関数です
var formObject = {
run : function(obj) {
if (obj.val() === '') {
obj.next('#indlist').html('<option value="">Select Topic First</option>').attr('disabled', true);
} else {
var v = obj.val();
jQuery.getJSON('/lib/update.php', {topicid : v }, function(data) {
if (!data.error) {
obj.next('#indlist').html(data.list).removeAttr('disabled');
} else {
obj.nextAll('#indlist').html('<option value="">Select Topic Correctly</option>').attr('disabled', true);
}
});
}
}
};
$(function() {
$('#update').live('change', function() {
formObject.run($(this));
});
});
ここに私のPHPコードがあります:
<div class="dropdownlist">
<form action="" method="post">
<table width="500px">
<tr>
<td>
<select name="gender" id="update">
<option value="">Select one</option>
<?php if (!empty($list)) { ?>
<?php foreach($list as $row) { ?>
<option value="<?php echo $row['topicid']; ?>">
<?php echo $row['topicname']; ?>
</option>
<?php } ?>
<?php } ?>
</select>
</td></tr><tr><td>
<select name="category" id="indlist"
disabled="disabled">
<option value="">----</option>
</select>
</td></tr></table>
</form>
</div>
しかし、それは機能しておらず、次の選択リストにデータを入力しませんでした