fullcalendar qeury event ตาม index ที่เลือกจาก select

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา fullcalendar qeury event ตาม index ที่เลือกจาก select

fullcalendar qeury event ตาม index ที่เลือกจาก select
ต้องการ query event ออกมา ตามที่ เลือก index ใน select element แต่ query ได้รอบเดี่ยว รอบต่อไปเหมือนกับ ค่า index ไม่ส่งไป
 
//event.php
<?php

header("Content-type:application/json; charset=UTF-8");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
include 'conn.php';
$sel = $_GET['selNot'];
if ($_GET['gData']) {
    $qr = @mysql_query("SELECT title, startDate, endDate, status FROM reservation WHERE NameNoc = " . $sel . "");
    while ($rs = @mysql_fetch_assoc($qr)) {
        if ($rs["status"] == 'wait') {
            $color = 'yellow';
        } else if ($rs["status"] == 'accept') {
            $color = 'green';
        } else if ($rs["status"] == 'unaccept') {
            $color = 'red';
        }
        $json_data[] = array(
            "title" => $rs["title"],
            "start" => $rs["startDate"],
            "end" => $rs["endDate"],
            "color" => $color,
            "allDay" => true
        );
    }
}
$json = json_encode($json_data);
if (isset($_GET['callback']) && $_GET['callback'] != "") {
    echo $_GET['callback'] . "(" . $json . ");";
} else {
    echo $json;
}
?>
//javascript
function OnSelctNotice(Notice) {
    var selectedOption = Notice.options[Notice.selectedIndex];
    var sel = selectedOption.value;
    alert(sel);
 $(function () {
        $('#calendar').fullCalendar({
            header: {
                left: 'prev,next today', 
                center: 'title',
                right: 'month',
            },
            buttonIcons: {
                prev: 'left-single-arrow',
                next: 'right-single-arrow',
                prevYear: 'left-double-arrow',
                nextYear: 'right-double-arrow'
            },
            
            events: {
                url: 'event.php?gData=1&sel=' sel '',
                
                error: function () {
                   
                },
                success: function (){
                    console.log(sel);
                } 
            },
            eventLimit: true,
            lang: 'th',
          
        });
    });
}


Liuyao13 22-07-2015 21:36:04

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
  ไม่รู้ว่าทำแบบไหน แต่รูปแบบโค้ดน่าจะเขียนผิด 


ninenik 23-07-2015
 ความคิดเห็นที่ 2
ผมใช้ function  ที่เรียกใช้จาก onchage ครอบ ก่อ่น แสดงปฏิทิน เพื่อให้เลือก option แล้วส่งค่า value ไป query event ออกมา

 <select name="noticex" id="notice" class="form-control" onchange="OnSelctNotice(this)">
        <option value='1' selected disabled> 1 </option>';
         <option  value='2' selected disabled> 2 </option>';
         <option  value='3' selected disabled> 3 </option>';
         <option  value='4' selected disabled> 4 </option>';
</select>


liuyao13 23-07-2015 11:57
 ความคิดเห็นที่ 3
ไม่ต้องมี onchange="OnSelctNotice(this)" 

เอาออกได้เลย ฟังก์ชั่นด้วย OnSelctNotice ไม่ต้องมี ใช้ jquery แทน

ลองดูโค้ดต่อไปนี้เป็นแนวทาง

 $(function () {
     
        var sel=0; // ค่าเริ่มต้น สมมติเป็น 0
        $("#notice").on("change",function(){
           sel=$(this).val();
            $('#calendar').fullCalendar('removeEvents'); // ลบ events ทั้งหมด
            $('#calendar').fullCalendar('removeEventSources'); // ลบ events source
            $('#calendar').fullCalendar('addEventSource',"event.php?gData=1&sel=" sel);
 
        });    
     
        $('#calendar').fullCalendar({
            header: {
                left: 'prev,next today', 
                center: 'title',
                right: 'month',
            },
            buttonIcons: {
                prev: 'left-single-arrow',
                next: 'right-single-arrow',
                prevYear: 'left-double-arrow',
                nextYear: 'right-double-arrow'
            },
            
            events: {
                url: 'event.php?gData=1&sel=' sel,
                
                error: function () {
                   
                },
                success: function (){
                    console.log(sel);
                } 
            },
            eventLimit: true,
            lang: 'th',
          
        });
     
});


ninenik 23-07-2015
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ