4
    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);
    })

}

上記は私の関数であり、たとえば、プロパティがデータバインドされているすべての入力を読み取りたいです。

<input type="text" id="frmIn1-Officer" data-bind="value: AOfficer" class="InputText"/>

^関数を実行するときは、データバインド値である「AOfficer」を返すようにします。

例は

<input type="text" id="frmIn1-Officer" data-bind="value: AOfficer1" class="InputText"/>
<input type="text" id="frmIn1-Officer" data-bind="value: AOfficer2" class="InputText"/>
<input type="text" id="frmIn1-Officer" data-bind="value: AOfficer3" class="InputText"/>
<input type="text" id="frmIn1-Officer" data-bind="value: AOfficer4" class="InputText"/>
<input type="text" id="frmIn1-Officer" data-bind="value: AOfficer5" class="InputText"/>
<input type="text" id="frmIn1-Officer" data-bind="value: AOfficer6" class="InputText"/>

そして、for eachループで、データバインドの値を使用できるようにしたいと思います。例:values [0] ='AOfficer1'

私の説明が少し紛らわしい場合は申し訳ありませんが、私は私の頭の中で完璧なアイデアを持っていますが、それを書面にしようとすることは非常に困難です。

4

5 に答える 5

5

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/

于 2012-06-15T14:45:20.150 に答える
2

data-bindjQuery属性セレクターで属性を持つ任意の要素を検索し$("[data-bind]")、それを反復処理して配列.each()を構築し、各値から をdataBinds取り除くことができます。value:

これはトリックを行います:

dataBinds = [];
$("[data-bind]").each(function(){
     dataBinds.push($(this).attr("data-bind").substring(7));
});​​​​​​

その例を設定しました:http://jsfiddle.net/dvirazulay/YPnwQ/

于 2012-06-15T14:44:06.523 に答える
1
$( "[data-bind]" ).each( function() {
    var elem = $( this );
    alert( elem.data( "bind" ) );
});

http://jsfiddle.net/NhNhK/

于 2012-06-15T14:44:17.817 に答える
1

data-bind次の属性を持つすべての要素を取得します。$('[data-bind]')

これらの要素を繰り返し、data-bind 属性を操作します。

$('[data-bind]').each(function(element,index){
  var data_bind = $(element).data('bind');
  alert(data_bind);
})
于 2012-06-15T14:45:47.503 に答える
0

.data()メソッドを使用し.each()てこれを実現できます。

デモ

$('input').each(function() {
    var $this = $(this);

    alert($this.data('bind').replace("value: ", ""));            
});​
于 2012-06-15T14:45:45.697 に答える