0

我有一个使用 javascript 生成的动态 html 表。该表包含不同的控件,例如具有自定义属性的文本框、下拉框。如何遍历该表中存在的所有控件并找到其自定义属性与某个值匹配的控件?

4

4 回答 4

2

这将为您提供表格中的所有表单元素(:input选择器):

var $formElements = $('#tableid').find(':input');

您可以使用属性选择器进行过滤:

//will select every form element having a data-custom attribute set to 5
var $formElements = $('#tableid').find(':input[data-custom="5"]');

请参阅jsFiddle 演示。对于我的示例,我使用了HTML5 数据属性,但代码可以使用您需要的任何属性。

或者,您可以使用该filter()方法编写过滤元素的函数:

var $formElements = $('#tableid').find(':input').filter(function () {
    return $(this).attr('data-custom') == '5';
});

带有 filter() 的 jsFiddle 演示

于 2012-02-24T09:06:05.473 回答
1

演示:http: //jsfiddle.net/DSqZr/1/

function getControl(_value){
    $("#panel :input").each(function(){
        if($(this).attr("custom") == _value){
           return  $(this);
        }
    })​
}

var selectedCrl = getControl(1);
于 2012-02-24T09:36:34.160 回答
0

您可以使用Attribute Contains Selector

检查示例它可能非常接近您需要的查找input具有select某些属性值的元素

于 2012-02-24T09:06:48.687 回答
0

给他们上课.control,然后:

$('.control[attribute=value]')

检查Selectors API以获取更多关于属性选择器的信息。

于 2012-02-24T09:06:53.080 回答