2011-04-01 63 views
0

我想检查复选框时调用html页面。我尝试了以下jQuery代码,但它不起作用。我犯了什么错误?如何使用jQuery调用复选框更改的html页面?

<script type="text/javascript"> 
     $('#my_checkbox').change(function() { 
     alert('Handler for .change() called.'); 
     $.get("equation_section.html"); 
     }); 
</script> 

这是我的复选框:

<input class="checkbox" type="checkbox" name="my_checkbox" id="my_checkbox"/> 

编辑

$('#my_checkbox').change(function() { 
if ($('#my_checkbox').attr("checked") == true) { 
    alert('Handler for .change() called.'); 
     $('#my_checkbox').addClass('jQlightbox'); 
      $.get('equation_section.html', function(data) { 
       $('.equation_section').html(data); 
     }); 
    } 
}); 

这是我编辑的代码。现在我收到警报框。该页面也被加载到div中。如果我只想将div内容显示在模式窗口上而不是之前的页面内容怎么办?有人建议我。

+0

“被叫”是什么意思? – sdleihssirhc 2011-04-01 05:38:55

+0

我想要加载其他页面,即方程section.html。 – Angeline 2011-04-01 05:41:12

回答

3

您是(可能)获得的页面,但后来什么都不做吧。很明显,你应该看看jQuery.get() page

的示例代码此外,你是否意识到这将基本上每当复选框被点击时调用?如果你想在 “equation_section.html” 页面加载到一个div,你可以做到以下几点:

在页面:

<div id="equation_section"></div> 

的Javascript:

<script type="text/javascript"> 
// on DOM load 
$(function() { 

    $('#my_checkbox').change(function() { 
    alert('Handler for .change() called.'); 
    $.get('equation_section.html', function(data) { 
     $('#equation_section').html(data); 
    }); 
    }); 

}); 
</script> 

如果你是试图将用户重定向到其他页面,您应该这样做:location.href = "equation_section.html";

+0

无论如何,我甚至没有弹出提示框.. – Angeline 2011-04-01 05:48:39

+0

请确保您使用'$(function(){});'在DOM加载后执行代码。 – JustinStolle 2011-04-01 06:02:37

+0

,这意味着变化事件没有被触发? – Angeline 2011-04-01 06:02:52

1

你想让你的页面位置改变吗?如果是这样,你可以使用window.location = "equation_section.html"。否则,你必须设置一个DOM元素的html。

HTML

<div id="test_div"></div> 

的JavaScript

$("#test_div").load("equation_section.html"); 
+0

谢谢。如果我只想显示div内容而不是上一页的内容怎么办? – Angeline 2011-04-01 07:11:04