使用JQuery获取所有数据绑定值
function getDbValue() { alert($('[data-bind]').length); alert($('[data-bind][0].data-bind')); alert($('[data-bind][0].value')); jQuery.each($('[data-bind]'), function(databind,key) { alert(key); alert(databind); alert(databind[key].data-bind); }) }
以上是我的函数,我想读取所有在其中具有data-bind属性的输入
^当运行我的函数时,我希望它返回’AOfficer’,因为这是数据绑定值。
所以一个例子是
并且在每个循环中我希望能够使用数据绑定的值。例如,值[0] =’AOfficer1′
对不起,如果我的解释有点令人困惑,我的想法在我的头脑中完美,但试图写它是更难。
jQuery以不同于其他属性的方式解释“data-something”属性。 因此,您应该选择所有元素并查找其数据绑定,如下所示:
$(document).ready(function(){ $('input.InputText').each(function(){ var input = $(this); if ($(input).data().bind) { alert($(input).data().bind); } }); });
然后你可以做字符串操作来解析你的值,我建议使用JSON,然后像对象一样加载它。 这是一个工作小提琴: http : //jsfiddle.net/3NERK/6/
您可以通过jQuery属性选择器搜索具有data-bind
属性的任何元素 – $("[data-bind]")
,然后使用.each()
对其进行迭代,并.each()
构造.each()
数组,剥离value:
每个价值。
这样就可以了:
dataBinds = []; $("[data-bind]").each(function(){ dataBinds.push($(this).attr("data-bind").substring(7)); });
我已经建立了一个例子: http : //jsfiddle.net/dvirazulay/YPnwQ/
$( "[data-bind]" ).each( function() { var elem = $( this ); alert( elem.data( "bind" ) ); });
使用data-bind
属性获取所有元素: $('[data-bind]')
迭代这些元素并操纵data-bind属性:
$('[data-bind]').each(function(element,index){ var data_bind = $(element).data('bind'); alert(data_bind); })
您可以将.data()
方法与.each()
来实现此目的。
DEMO
$('input').each(function() { var $this = $(this); alert($this.data('bind').replace("value: ", "")); });