Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript $(窗口).load(函数()未执行?_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript $(窗口).load(函数()未执行?

Javascript $(窗口).load(函数()未执行?,javascript,jquery,ajax,Javascript,Jquery,Ajax,这是我的html代码: 第一节 第二节 第三节 第四节 项目111 项目112 项目113 项目114 项目121 项目122 项目123 项目124 项目131 项目132 项目133 项目134 第一节 第二节 第三节 第四节 项目211 项目212 项目213 项目214 项目221 项目222 项目223 项目224 项目231 项目232 项目233 项目234 第一节 第二节 第三节 第四节 项目311 项目312 项目313 项目314 项目321 项目322 项目323 项目

这是我的html代码:


第一节
第二节
第三节
第四节
项目111
项目112
项目113
项目114
项目121
项目122
项目123
项目124
项目131
项目132
项目133
项目134
第一节
第二节
第三节
第四节
项目211
项目212
项目213
项目214
项目221
项目222
项目223
项目224
项目231
项目232
项目233
项目234
第一节
第二节
第三节
第四节
项目311
项目312
项目313
项目314
项目321
项目322
项目323
项目324
项目331
项目332
项目333
项目334
jquery代码:

<script type="text/javascript">
$(window).load(function(){
$('.flip').click(function() {
    $(this)
        .closest('tbody')
        .next('.section')
        .toggle('fast');
});
});

</script>

$(窗口)。加载(函数(){
$('.flip')。单击(函数(){
$(本)
.最近的('tbody')
.next(“.section”)
.切换(“快速”);
});
});

但是,当我使用ajax和jdbc从java类中获得相同的代码时,我就无法获得jquery效果。我在这里做了什么错误??

这对您来说应该很好

$(document).ready(function() {
  alert("DOM is ready");
});
作为快捷方式,您可以使用

$(function() {
  alert("DOM is ready");
});
在运行上述代码之前,确保页面中包含jQuery(例如)


$(函数(){
警报(“DOM已准备就绪”);
});
尝试准备好文档


$(文档).ready(函数(){
$('.flip')。单击(函数(){
$(本)
.最近的('tbody')
.next(“.section”)
.切换(“快速”);
});
});
如果html是在AJAX请求后加载的,请尝试使用$(document).on


函数onFlipClick(事件){
$(本)
.最近的('tbody')
.next(“.section”)
.切换(“快速”);
}
$(文档).ready(函数(){
$(文档).on('click','.flip',onFlipClick);
});

由于您使用ajax加载页面内容,因此尝试将事件处理程序附加到页面上当时不存在的元素。请改用此选项

jQuery(function($) {
    $("document").on("click", ".flip", function() {
        $(this)
            .closest('tbody')
            .next('.section')
            .toggle('fast');
    });
});
jQuery(function($){})
只是处理文档就绪事件的另一种方法。如果您有理由使用它,可以将其替换为
$(window.load()


另外,交换
$(“文档”)
用于容器元素的选择器。在您的代码中有一个div,class
.content
,因此我建议使用它,但我不确定它是加载内容的位置还是内容的一部分。您需要指定当时页面上的父/祖等元素。

请尝试以下代码se在通过AJAX设置值后将此代码放入

$(".flip").on("click", function() {
        $(this)
            .closest('tbody')
            .next('.section')
            .toggle('fast');
    });

你的小提琴很好用。你的页面中有jquery.js吗?检查浏览器控制台是否有任何错误扫描你解释的
,但是当我使用ajax和jdbc从java类获得相同的代码时?@archer我使用ajax从java类获得上述html代码。然后我打印所有内容,但没有得到切换效果。奇怪,为什么你是在使用jQuery 1.5吗?这不是真的。
$(窗口)。加载(fn)
可以在页面的所有内容加载后触发事件。这很好,但我在他的代码中没有看到任何东西表明他需要的只是经过验证的
$(fn)
很公平,但是更改页面挂钩事件不会有任何效果,因为他的代码当前正在工作。请检查jsfiddle@RoryMcCrossan那么我应该使用什么呢?如果它是错误的话?这完全是学术性的。他的问题是,他通过一个ajax调用加载上面的html。加载后的事件委托或绑定事件处理程序是他需要的这对我来说根本不起作用,但非常感谢!!你能在使用ajax加载内容的地方发布代码吗?没有什么可发布的..事实上,如果我运行简单的jsp页面,那么一切都正常,但是当我使用ajax调用更改div的值时,表会被打印出来,但切换效果不起作用。。。
<script type="text/javascript">
$(document).ready(function(){
$('.flip').click(function() {
    $(this)
        .closest('tbody')
        .next('.section')
        .toggle('fast');
});
});

</script>
<script type="text/javascript">

function onFlipClick(event){
    $(this)
        .closest('tbody')
        .next('.section')
        .toggle('fast');
}
$(document).ready(function(){
    $(document).on('click', '.flip', onFlipClick);
});

</script>
jQuery(function($) {
    $("document").on("click", ".flip", function() {
        $(this)
            .closest('tbody')
            .next('.section')
            .toggle('fast');
    });
});
$(".flip").on("click", function() {
        $(this)
            .closest('tbody')
            .next('.section')
            .toggle('fast');
    });