0

将以下两个脚本添加到 html 页面时,它们都不起作用,我想可能是脚本冲突,我的问题是如何克服这个问题?第一个脚本是:

            $('document').ready(function(){

            $('#form').validate({
                    rules:{
                        "name":{
                            required:true,
                            maxlength:40
                        },


                        "message":{
                            required:true
                        }},

                    messages:{
                        "name":{
                            required:"This field is required"
                        },


                        "message":{
                            required:"This field is required"
                        }},

                    submitHandler: function(form){
                      $(form).ajaxSubmit({
        target: '#preview', 
        success: function() { 
        $('#formbox').slideUp('fast'); 
        } 
    }); 

                    }

            })

        });

第二个脚本是:

$(document).ready(function(){
   var j = jQuery.noConflict();
    j(document).ready(function()
    {
        j(".refreshMe").everyTime(3000,function(i){
            j.ajax({
              url: "posts.php",
              cache: false,
              success: function(html){
                j(".refreshMe").html(html);
              }
            })
        })
    });
   j('.refreshMe').css({color:"red"});
});
4

2 回答 2

0

你可以在 HTML 中使用更多的脚本标签,你的问题是你想在初始化之前使用 jQuery。确保首先将 jQuery 添加到 HTML 中,然后才使用它。

于 2013-08-18T12:39:57.257 回答
0

请参阅文档:http ://api.jquery.com/jQuery.noConflict/

var j = jQuery.noConflict();将 $ 变量的值“返回”到 jQuery 占用它之前的任何值。在这种情况下,它恰好是undefined。这破坏了第一个脚本,因为它现在正在尝试使用未定义的 $ 变量(您应该在控制台中弹出很多错误,您应该将其添加到您的问题中)。

至于为什么第二个脚本停止工作,如果没有更多信息,很难说出你的具体意思 - 你怎么知道它已经停止工作,是否有任何 javascript 错误等。

于 2013-08-18T12:28:26.273 回答