Viewing 7 posts - 1 through 7 (of 7 total)
Profile photo of princehai
princehai 4 years trước

mình có vấn đề thế này:
1. < ?php echo $this->Html->script(‘jquery.min’); ?>
2. < ?php echo $this->Html->script(‘jquery.form’); ?>
3. < ?php echo $this->Html->script(‘jquery-1.9.1.min’);?>

phía dưới có thêm 2 script nữa:
– script1 sử dụng các hàm trong 2 script đã include đầu tiên để làm công việc 1
– script2 sử dụng các hàm trong script đã include thứ 3 để làm công việc 2
nếu để thứ tự như vầy thì công việc 1 làm được nhưng công việc 2 không làm được,
nếu include theo thứ tự 3->1->2 thì công việc 2 làm được nhưng công việc 1 không làm được
mình có tham khảo một số trang thì mình đoán là bị xung đột, đã giải quyết thêm rồi thêm jQuery thay cho $ ở phía dưới nhưng không thành công…
Ai biết cách nào khắc phục thì giúp với..

Câu hỏi này có hữu ích với bạn? (0 đánh giá)
Profile photo of Kiếp đào hoa
Kiếp đào hoa 4 years trước

Theo mình bạn nên load 2 script tại 2 thời điểm khác nhau. Cụ thể như sau:

  1. Đầu tiên bạn cho script thực hiện công việc 1 chạy cùng với việc load Script 3.
  2. Sau khi toàn bộ trang đã load xong thì bạn chạy tiếp Script thực hiện công việc thứ 2.

Để script chạy sau khi trang đã load xong bằng cách đưa script đó vào:

$(window).load(function(){
  //Script 2...
})

Ngoài ra bạn cũng nên thử đưa cái script 1 vào thay vì script 2.
Còn Script 3 thì bạn luôn để nó đầu tiên vì nó là thư viện Jquery.

Câu trả lời này có hữu ích với bạn? (0 đánh giá)
Profile photo of TheBigBang
TheBigBang 4 years trước
  1. <?php echo $this->Html->script('jquery.min'); ?>
  2. <?php echo $this->Html->script('jquery.form'); ?>
  3. <?php echo $this->Html->script('jquery-1.9.1.min');?>

Chào bạn, theo như bạn nói thì mình thấy Script 1 và 3 hiện tại là trùng nhau mà. Vì chúng đều là thư viện Jquery. Jquery.minjquery-1.9.1.min đều là thư viện Jquery, bạn chỉ sử dụng đc 1 trong 2 thư viện đó mà thôi. Trường hợp này bạn chỉ việc loại bỏ 1 trong 2 thư viện này là đc.

Câu trả lời này có hữu ích với bạn? (0 đánh giá)
Profile photo of The Cat
The Cat 4 years trước

Bạn thử dùng theo cách này xem.

Khóa toàn bộ các lệnh thực thi script 2 như sau:

(function($) {

     $(function() 
     {
          // các dòng lệnh thực thi của script 2
         $('#anhmh').live('change', function(){
            $("#preview").html('');
            $("#preview").html('<img src="/football_ticket/webroot/img/loader.gif" alt="Uploading...."/>');
            $("#FootballmatchAddForm").ajaxForm({
                target: '#preview'}).submit();

        });
     });

})(jQuery);

Việc bạn phải làm là mở file Script 2 lên và chèn thêm (function($) { vào dòng đầu tiên và })(jQuery); vào dòng cuối cùng. Mình đã làm và đã thành công. Còn bạn thì sao? :D
Bạn cũng nhớ bỏ cái dấu phảy ở dòng lệnh cuối như bác TheBigBang nói nhé.

Câu trả lời này có hữu ích với bạn? (0 đánh giá)
Profile photo of TheBigBang
TheBigBang 4 years trước
<script>
    $(document).ready(function() {
        // create DateTimePicker from input HTML element
        $("#datetimepicker").kendoDateTimePicker({
            value:new Date(),
            format: "dd/MM/yyyy HH:mm",
        });
    });
</script>

Trường hợp của bạn mình thấy có dư 1 dấu phảy ” , ” ở dòng script cuối(format: “dd/MM/yyyy HH:mm”,). Bạn bỏ dấu phảy đó đi.

Câu trả lời này có hữu ích với bạn? (0 đánh giá)
Profile photo of TheOneAndOnly
TheOneAndOnly 4 years trước

Chào bạn, trường hợp như bạn nên thay đổi ở Script 2 như sau:

<script type="text/javascript" >
         $(document).ready(function() {
            $('#anhmh').live('change', function(){
                $("#preview").html('');
                $("#preview").html('<img src="/football_ticket/webroot/img/loader.gif" alt="Uploading...."/>');
                $("#FootballmatchAddForm").ajaxForm({
                    target: '#preview'}).submit();

            });
        });
    </script>

thay đổi thành

<script type="text/javascript" >
         $(document).ready(function() {
            $('#anhmh').change(function(){
                $("#preview").html('');
                $("#preview").html('<img src="/football_ticket/webroot/img/loader.gif" alt="Uploading...."/>');
                $("#FootballmatchAddForm").ajaxForm({
                    target: '#preview'}).submit();

            });
        });
    </script>

Ở đây mình đổi từ .live('change', function){… thành .change(function){

Câu trả lời này có hữu ích với bạn? (0 đánh giá)
Profile photo of Been Young
Been Young 4 years trước
<script>
        $(document).ready(function() {
            // create DateTimePicker from input HTML element
            $("#datetimepicker").kendoDateTimePicker({
                value:new Date(),
                format: "dd/MM/yyyy HH:mm",
            });
        });
    </script>

Ở đây bạn thêm type="text/javascript" vào thẻ <script> và bỏ dấu phảy ở cuối dòng code format: "dd/MM/yyyy HH:mm",

Còn ở dòng code thứ 2 bạn đổi live thành bind:

<script type="text/javascript" >
         $(document).ready(function() {
            $('#anhmh').bind('change', function(){
                $("#preview").html('');
                $("#preview").html('<img src="/football_ticket/webroot/img/loader.gif" alt="Uploading...."/>');
                $("#FootballmatchAddForm").ajaxForm({
                    target: '#preview'}).submit();

            });
        });
    </script>
Câu trả lời này có hữu ích với bạn? (0 đánh giá)
Viewing 7 posts - 1 through 7 (of 7 total)

You must be logged in to reply to this topic.