【问题标题】:jQuery and checkboxes - get previous eleementjQuery 和复选框 - 获取上一个元素
【发布时间】:2012-11-20 06:45:33
【问题描述】:

我有一个相当简单的任务,但我无法解决它。我无法理解 jQuery 如何使用复选框。

我的页面上有几个复选框。

<input type="hidden" value="121"/>
<input type="checkbox" value="27" name="option_value[12][]" id="option_value_27" class="filtered option_value" cat="121">

我正在尝试使用该查询选择选中的:

var chboxes=$(".option_value:checked");

(他们都有.option_value风格)

我希望我会得到一个对象数组,但我会得到一个没有方法和属性的 HTML 片段数组。

我可以得到对象数组吗?

我需要使用prev() 方法。

在这个论坛上,我找到了get(0) 的解决方案,但在我的情况下它不起作用。

【问题讨论】:

  • 您需要显示您的标记,否则我们无法判断 .prev() 与该问题有什么关系。
  • 我只需要获取上一个元素。问题是我得到了没有方法和属性的简单 HTML。
  • 我认为您不太了解 jQuery 的工作原理,也许您应该阅读一些初学者文档并更好地了解它。此外,您的问题确实让我们不想回答任何问题。

标签: jquery html checkbox


【解决方案1】:

这可能会有所帮助

<input type="checkbox" checked="checked" class="option_value" value="one" /> Checkbox 1
<input type="checkbox" checked="checked" class="option_value" value="two" /> Checkbox 2
<input type="checkbox" class="option_value" value="three" /> Checkbox 3

$('.option_value:checked').each(function () { // Loop through all checked checkboxes
    var prev = $(this).prev(); // Do something with previous jQuery object
});          

​ 试试看:http://jsfiddle.net/viktorb/GugSM/1/

【讨论】:

    【解决方案2】:

    只有这么少,我只能猜测,但可能是这样的:

    $("input").is(":checked").each(function(i) {
        $(this).prev() // this would be the element just before a checked checkbox
    });
    

    不太确定我是否理解您的评论,但是:

    $("input").is(":checked").each(function(i) {
        $("#someButtonID").append($(this).prev());
    });
    

    【讨论】:

      猜你喜欢
      • 2022-11-24
      • 2012-04-03
      • 1970-01-01
      • 2011-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-07
      • 2013-09-24
      相关资源
      最近更新 更多