从外部html文件加载JQuery switch case语句?

时间:2011-11-12 00:52:09

标签: html jquery

如何从外部文件加载div内容,还在过程中使用case语句?我的Jquery代码可能有些东西吗?其实......我很困惑??

JQuery代码:

$('.click-test').click(function() {
switch (this.id) {
case "test":
$('#test').load('external-file.html #test');
  break;

  case "test2":
  etc..
  });

html页面

<div class="click-test" id="test">click test</div>
<div id="test">place words from external file here</div>

外部文件.html

<div id="test">some words</div>

2 个答案:

答案 0 :(得分:0)

this.id引用任何内容,因为此对象是没有ID属性的.click-test div。其他一切看起来都很好,除了我不知道你的.html #test

之后是否应该有空格键

答案 1 :(得分:0)

jquery代码基本上是正确的。 &#34;这&#34;确实引用了您怀疑并设置的HTML元素。所以,你的开关正在工作。

<div class="click-test" id="test">click test</div>

但是,您的基本HTML页面中有2个div,其ID均为&#34; test&#34;。每个ID在HTML页面上都应该是唯一的(包括您正在加载的内容)。所以,你需要做一些重构。

您可以将HTML更改为:

<div class="click-test" data-loadid="test">click test</div>

以及JavaScript:

$('.click-test').click(function() {
    switch($(this).attr("data-loadid")) {

这将从名为&#39; data-loadid&#39;的属性中读取。使用jQuery attribute函数。然后,您可以像以前一样使用加载继续加载外部div内容。 (虽然,您可能想要删除书签,因为它不必要?)