0
동적으로 여러 선택 목록을 만들었습니다. 채널 이름을 클릭 할 때 유형을 가져와야합니다. 문제는 한번 선택 목록을 클릭하면 자바 스크립트 함수가 반복적으로 호출되어 아약스가 여러 번로드됩니다.
HTML 코드 :동적으로 생성 된 선택 목록은 javascript 함수에 mutilple 호출을 만듭니다.
<td>
<SELECT name="channel_name[]" onclick ="get_type(this)"; required class='channelname'>
<option value="">Select...</option>
<?php foreach($channel_list as $row) {
$channelid = $row['channelid'];
$channelname = $row['channelname'];
if($U_channelid==$channelid)
{
$s = "selected = selected";
}
else
{
$s = "";
}
echo "<option value='$channelid' $s>".$channelname."</option>";
?>
<!-- <OPTION value='<?php echo $channelid ?>' $s ><?php echo $channelname?></OPTION> -->
<?php } ?>
</SELECT>
</td>
Javascipt 코드 :
function get_type()
{
$(".channelname").live("change", function() {
var channel_id = $(this).find("option:selected").attr("value");
var _this = $(this); //Save current object
alert(channel_id);
$.ajax({
type: "POST",
url: '<?php echo base_url(); ?>index.php/partner/get_channel_type',
data: 'channelid='+channel_id,
async: false
}).done(function(data1) {
if(data1){
_this.closest("tr").find('input[name="type[]"]').val(data1);
}else{
alert("Channel type is not defined");
_this.closest("tr").find('input[name="type[]"]').val("");
}
});
});
}
감사합니다. 선택 코드와 $ (". 채널 이름")에서 get_type (this)을 유지했습니다. javascritpt 함수에서 change (function() {작업 중입니다 ... – Arti
아약스 처리는 데이터를로드하는 데 10 초가 걸립니다. – Arti