jquery
  • append
  • selector
  • dynamic-controls
  • 2012-09-18 6 views 1 likes 
    1

    아마 내가 선택기 구문 인 것 같습니다. 모든 것을 하나의 문장에 추가하면 모든 것이 추가되지만 jQuery 선택기로는 선택할 수 없습니다.jQuery가 .appended 컨트롤/요소를 선택하지 않습니다.

    분할하면 두 번째 추가가 실패하지만 처음에는 성공합니다.

    $.each($.parseJSON(msg.d) , function(i){ 
        $("#contactsGrid").append("<tr id='contactRow." + $.parseJSON(msg.d)[i].SupplierContID + "'></tr>"); 
        $("#contactRow." + $.parseJSON(msg.d)[i].SupplierContID).append("<td><input type='text' id='contactLastName." + $.parseJSON(msg.d)[i].SupplierContID + "' /></td>"); 
    }); 
    

    동적 컨트롤을 선택할 수 있어야합니다.

    미리 감사드립니다.

    답변

    1

    ID에 .의 이스케이프 처리가 필요한 특수 문자가 있습니다.

    $("#contactRow\\." +... 
    

    그러나 어쨌든 1 라인에서 처리하는 것이 좋습니다.

    +0

    당신은 내 영웅입니다. 아주 많이! –

    1

    기간은 선택기에서 특수 문자, 당신은 그것을 탈출해야합니다 난 그냥 구축 된 다른 프로젝트에 사용

    $("#contactRow\\." + $.parseJSON(msg.d)[i].SupplierContID) 
    
    0

    뭔가. ID 이름/요소를 빠르게 변경 했으므로 어디로 가야하는지에 대한 좋은 아이디어가 있기를 바랍니다.

    $.each($.parseJSON(msg.d) , function(i){ 
        $("#contactsGrid").append(
          $(document.createElement('tr')).attr({ 
           'id' : "contactRow\\." + $.parseJSON(msg.d)[i].SupplierContID + 
          }).append(
           $(document.createElement('td')).append({ 
            $(document.createElement('input')).attr({ 
             'type' : 'text', 
             'id' : "contactLastName\\." + $.parseJSON(msg.d)[i].SupplierContID 
            }) 
           }) 
          ) 
         ) 
        ) 
    }); 
    
    관련 문제