สอบถาม angular scroll หน้า page แล้วส่งค่าไปค้นหาด้วย ajax

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: สอบถาม angular scroll หน้า page แล้วส่งค่าไปค้นหาด้วย ajax

สอบถาม angular scroll หน้า page แล้วส่งค่าไปค้นหาด้วย ajax

โดย thatsawan » 05/07/2016 5:50 pm

คือ ลองโหลดตัวอย่างนี้มาใช้ http://codepen.io/davidchin/pen/oXbYEg เเต่ว่าต้องการจะเพิ่มให้ตอน scroll ดึงค่าเฉพาะที่เราต้องการ เเต่ไม่รู้จะส่งค่าไปยังไง

ลองใช้วิธีเก็บค่าเข้า localStorage เเล้วเรียกมาใช้งาน

โค้ด: เลือกทั้งหมด

   localStorage.setItem('tagname', JSON.stringify(tagname));  
มันค้นหาได้ก็จริง เเต่มันเคลียร์ค่าตัวแปรที่ส่งมาค้นหาไม่ได้
คำสั่งนี้มันทำงานบางครั้งที่กด f5

โค้ด: เลือกทั้งหมด

localStorage.removeItem('tagname'); 

ลองเปลี่ยนวิธีใหม่ ส่งค่าไปใน function ตอนคลิก

โค้ด: เลือกทั้งหมด

$scope.search = function (tabname, tagname) {
                //  alert(tagname);
                //  localStorage.removeItem('tagname');
                localStorage.setItem('tagname', JSON.stringify(tagname));
                var url = "{AJAX_JSON}",
                        config = {
                            params: {
                                limit: 10,
                                offset: 0,
                                tabname: tabname, //sessionStorage.getItem('tags_key'),
                                nametag: tagname,
                            }
                        };

                $http.post(url, config)
                        .then(function (response) {
                            $scope.posts = response.data.response.posts;
                            // onPageLoad(postLoader)
                            console.log(2);
                            console.log($scope.posts);
                            var params = {
                                tagname: tagname,
                            };
                            postLoader.init(params).then(onPageLoad2);
                            postLoader.next(params.tagname).then($scope.nextPage);
                        });
            } 
ผลมันก้อได้ค่าที่จะใช้ต่อตอนค้าหา เเต่ได้เเต่ครั้งเเรกครั้งเดียวตอน scroll ลงมาค่ามันก็หหายไป

โค้ด: เลือกทั้งหมด

PostLoader.prototype.get = function (page, tagname) {
//            alert(000);
        console.log(tagname);

            var tagname = tagname;
            var tab_name = '{KEYWORD}';

            var url = "{AJAX_JSON}",
                    config = {
                        params: {
                            limit: this.pagination.perPage,
                        }
                    };
            // Define the post number to start from
            config.params.offset = (page - 1) * config.params.limit;
            config.params.tabname = tab_name;
            if (tagname) {
                config.params.nametag = tagname;
            }
            // Make a HTTP request
            return $http.post(url, config);

        }; 

ข้างบน