根据类名加载页面

发布于 2024-07-27 12:39:16 字数 1060 浏览 10 评论 0原文

我的页面上有这样的代码:

<div class="item item_wall id1"></div>
<div class="item item_wall id2"></div>
<div class="item item_wall id3"></div>
<div class="item item_wall id4"></div>
<div class="item item_wall id5"></div>

我想要 jquery 中的某些内容,以便当单击“item”类的 div 时,它将从页面加载另一个 div,页面的文件名将取决于单击的 div。 最好我希望它加载:

something.php?type=item_wall&id=id1

为了将来的参考,这就是我最终得到的:

<div id="itemstable" class="item_love">
    <div class="id1"></div>
    <div class="id2"></div>
    <div class="id3"></div>
    <div class="id4"></div>
    <div class="id5"></div>
    <div class="id6"></div>
</div>

jQuery:

<script>
$("#itemstable div").click(function(){
    var url = "something.php?type=" + $(this).parent().attr("class") + "id=" + $(this).attr("class");
    alert(url);
}); 
</script>

I've got code like this on my page:

<div class="item item_wall id1"></div>
<div class="item item_wall id2"></div>
<div class="item item_wall id3"></div>
<div class="item item_wall id4"></div>
<div class="item item_wall id5"></div>

I want something in jquery so that when a div with the class of "item" is clicked, it will load another div from a page, the page's filename will depend on the div clicked. Preferably i would like it to load:

something.php?type=item_wall&id=id1

For future reference this is what I ended up with:

<div id="itemstable" class="item_love">
    <div class="id1"></div>
    <div class="id2"></div>
    <div class="id3"></div>
    <div class="id4"></div>
    <div class="id5"></div>
    <div class="id6"></div>
</div>

jQuery:

<script>
$("#itemstable div").click(function(){
    var url = "something.php?type=" + $(this).parent().attr("class") + "id=" + $(this).attr("class");
    alert(url);
}); 
</script>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

遗失的美好 2024-08-03 12:39:16

对于 XHTML 有效文档,最简单的方法是在主 DIV 下添加不可见的子 DIV。 例如:

<div class="item">
  <div class="variable type">item_wall</div>
  <div class="variable id">1</div>
</div>

您可以使用 .find() 查找“自定义属性”。 例如:

$(".item").click(function() {
    var type = $(this).find(".type").val();
    var url = "something.php?type=" + type;
    windows.location = url;
});

一点意见:应该避免将数据与 UI 混合。

For XHTML valid document, the easiest is to add invisible child DIV under your main DIV. E.g.:

<div class="item">
  <div class="variable type">item_wall</div>
  <div class="variable id">1</div>
</div>

You can find the "custom attribute" using .find(). E.g.:

$(".item").click(function() {
    var type = $(this).find(".type").val();
    var url = "something.php?type=" + type;
    windows.location = url;
});

A bit of opinion: mixing data with UI should be avoided.

终止放荡 2024-08-03 12:39:16

呼应 Spencer Ruport 的答案,当使用 jQuery 使用类以外的自定义属性时,您可以使这变得更容易。

例如,您的 DIV 可能如下所示:

<div class="item" type="item_wall" id="1"></div>

您可以轻松创建如下所示的 jQuery 选择器和事件:

$(".item").click(function() {
    var url = "something.php?type=" + $(this).attr("type");
    windows.location = url;
});

当然,不要忘记检查有效性,永远不要信任用户输入(您的 HTML 可能会被恶意用户重写)。

Echoing Spencer Ruport's answer, you can make this easier when using jQuery to use custom attributes other than class.

For example, your DIV may look like this:

<div class="item" type="item_wall" id="1"></div>

You can easily create jQuery selector and event like the following:

$(".item").click(function() {
    var url = "something.php?type=" + $(this).attr("type");
    windows.location = url;
});

Of course, don't forget to check for validity, never trust user input (your HTML can be rewrote by a malicious user).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文