2017-08-30 49 views
0

下面,您可以找到我正在使用的“选定”-Object的屏幕截图。这是一个选择列表。我收到以下代码的对象(使用jQuery):通过变量访问数据属性值

var addArticle = $('.add-article'); // div.add-article 
// selector is a dynamic value, that defines, which select-list should be "found" 
var select = addArticle.find('[data-id=' + selector + ']'); 

对象选择正常。但是,当我想获得数据属性值(值是数字),我无法得到它们。

Object image here

我试了很多变化,以获取值,但这里是它的一个例子

//$this.selectors is an array with all values beween data- and -id 
$.each($this.selectors, function (i, el) { 
    //return if last needed data attribute was read 
    if (i == $this.lastAsInt) { 
     return false; 
    } 
    // "generate" data-selector 
    selector = '[data-' + el + '-id]'; 

    // select = object from the image (see link), also tried with data() 
    location[el] = select.find(':selected').find(selector); 
}); 

我希望有人能理解我的问题:)

+0

它真的不清楚你问什么,但如果你想从'data'选择元素属性您打造'selector',那么你需要像这样将它包装在'[]'中:'selector ='[data-'+ el +'-id]';'。如果这不是你所需要的,那么请编辑你的问题,以使你想要做的更清楚 –

回答

0

比方说你有一个变量,你存储你的“选定”对象,例如var myObject

然后,你可以简单地获取数据attr与jQuery的.data() ibute:

myObject.data('room-id'); 

这里是一个Fiddle

+0

在我的情况下,这是行不通的。我必须通过myObject.data(变量)访问数据属性。 –

+0

我很抱歉。我的问题是,该对象无法在函数内部读取(bc accessibility ...) –