2017-11-22 7 views
-1

私はいくつかの値を設定している私の剃刀に以下のForEachを持っています。 正常に動作します。私はすべての価値観を見ることができます。データを反復して属性にバインドする

@foreach (var item in Model.ConsultantDetails.ScopeOfSevrices) 
    { 
     <div id="optionValue" class="item" data-value=>@item.Name</div> 
    } 

次に、私はajax呼び出しを呼び出して結果を返します。 私は

$.each(data.ConsultantDetails.ScopeOfSevrices, function (index) { 
    $('optionValue').attr("data-value=>", data.ConsultantDetails.ScopeOfSevrices[index].Name); 
    }); 

運を繰り返すことによって、バック同じDIVにこのデータを設定したい、私はそれをどのように実現するのですか?

+1

'。' '' => 'ではなく、' .attr(key、value) 'を使用する必要があります。' .attr( "data-value"、data.ConsultantDetails.ScopeOfSevrices [index] .Name) ' – Satpal

+1

あなたが1つ以上のアイテムを持っている場合は、あなたのforeachを見て、 'optionValue'というIDを複製して、IDの –

+0

を複製してはいけません.Satpal no luckはまだバインディングを更新しません。私は古い価値を見ます – immirza

答えて

0
    代わりのforeachループのため
  1. 使用するので、ここで我々が使用する「=代わりに、データ値を使用して、=>使用データ値をいけない」またはいくつかのダミー値(各反復
  2. にseprate IDを設定することができ:item.Name)は

    @for (int i = 0; i < Model.ProductTypeService.Count; i++) 
        { 
        var item = Model.ProductTypeService[i]; 
        var id = "optionValue" + i; 
        <div id="@id" class="item" data-value="@item.Name">@item.Name</div> 
        } 
    
  3. 最後に、jqueryのでは、我々はdivのIDに基づいて属性値を割り当てることができます

    $.each(data.ProductTypeService, function (index) { 
          $('#optionValue' + index).attr("data-value", data.ProductTypeService[index].Name + index); // + index // just to see different value 
         }); 
    
関連する問題