[英]How to get attr of element from ajax success result of codeigniter calendar?
我將使用codeigniter日歷來顯示事件。 默認情況下,當我生成日歷並顯示每個事件時,沒有問題。 每個事件可以顯示在引導程序模式上,具體取決於(單擊)dan傳遞給my控制器功能的日期。 問題是當我使用jquery ajax單擊prev或next鏈接來加載prev或下個月時,當月份改變后,然后單擊一天,則jquery $(this)函數無法捕獲attr值。 有我的代碼片段:
CI日歷模板已刪除:
{cal_cell_content}<div data-toggle="modal" data-target=".mymodal" class="detail" val="{day}"><span class="myclass">{day}</span><span class="d{day}">{content}</span></div>{/cal_cell_content}
加載日歷的功能:
public function show_cal_ajax($yr = NULL, $mth = NULL)
{
$this->load->model('m_cal');
$this->load->library('calendar', $this->_calconfig());
$year = $month = "";
if($yr != NULL && $mth != NULL)
{
$month = $mth;
$year = $yr;
}
else
{
$month = date('m');
$year = date('Y');
}
$numEvent = $this->m_cal->numOfEvent($month, $year);
$data = array(
'cal_data' => $this->calendar->generate($year, $month, $numEvent)
);
echo $data['cal_data'];
}
和jquery ajax用於加載事件詳細信息:
$(".detail").on('click',function(){
var day = $(this).attr('val');
$.ajax({
type: 'POST',
dataType: 'html',
url: <?php echo "'".base_url('view/show_event_detail')."'"; ?>,
data:{<?php echo "y: $year, m: $month";?>, d: day},
success: function( data ) {
$( ".modal-content").html(data);
},
error: function(){
alert('Error: ajax request error.');
}
});
});
因此,在通過單擊上一個或下一個鏈接更改日歷后,jQuery詳細信息功能不起作用,我猜$(this).attr('val')沒有值,因為日歷數據/月已被ajax更改請求並將其附加到html的#calendar上。盡管月份已更改,任何人都可以幫助我如何獲取attr值...
順便說一句,完整的代碼可以在這里找到: http : //pastebin.com/VgydABai謝謝...
將年月日添加到模板中,然后使用帖子的各個值
class="detail" data-day="{day}" data-month="{month}" data-year="{year}"
var caldata = {};
$(document).on('click', ".detail", function() {
caldata["y"] = $(this).attr('data-year');
caldata["m"] = $(this).attr('data-month');
caldata["d"] = $(this).attr('data-year');
$.ajax({
type: 'POST',
dataType: 'html',
url: <?php echo "'".base_url('view/show_event_detail')."'"; ?>,
data: caldata,
success: function( data ) {
$( ".modal-content").html(data);
},
error: function(){
alert('Error: ajax request error.');
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.