2011-11-03 2 views
2

이 오류를 해결할 수있는 방법 :나는 "아니오 방법 'appendTo'오류를 해결할 수있는 방법

catch되지 않은 형식 오류 :

function refresh(){ 
     $('#contacts').empty(); 
     $("#contactTmpl").tmpl({contacts:contacts}).appendTo("#contacts"); 
     $(".contact").each(function(i) { 
      var contact = contacts[i]; 
      $("input.tomap", this).link(contact); 
     }); 
    } 


<script type="text/javascript" src="a.js"></script> 

<form> 
    <div id="contacts">Loading ...</div> 
    <button class="add">New</button> 
    <button class="save"> Save</button> 
</form> 
<script id="contactTmpl" type="text/x-jquery-tmpl"> 

    {{each contacts}} 
     <div class="contact" data-index="${$index}"> 
      <label>First name</label> <input class="tomap" name="firstName" value="${firstName}"> 
      <label>Last name</label> <input class="tomap" name="lastName" value="${lastName}"> 
      <label>Number</label> <input class="tomap" name="phone" value="${phone}"> 
      <div class="tools"> 
       <button class="delete"</button> 
      </div> 
     </div> 
    {{/each}} 
</script> 

: 개체가있는 방법 'appendTo' 다음과 같은 코드가 없습니다 이것은 HTML과 자바 스크립트 코드를 먼저 노드를 만들 필요가

+0

. 언제 새로 고침()이 호출 되나요? 문서가 준비되거나로드 된 후, 나는 희망한다. a.js의 내용은 무엇입니까? 보고 싶은 바이올린을 던질 수 있을까요? – Kato

답변

1

인이을 시도해보십시오.

$('<div id="contactTmpl"/>').tmpl({contacts:contacts}).appendTo("#contacts"); 
+0

나는 노드를 가지고, 내가 만든 편집을 참조하십시오. –

4

jQuery 템플릿을 사용한다고 가정합니다. 템플릿이 렌더링에 실패하면 null을 반환합니다. 왜 객체를 얻는지는 메소드 오류가 없습니다. 템플릿을 렌더링하기 위해 템플릿과 호출로 코드를 잘라내어 {{each}}${$index}을 수정했습니다. 또한 변수 contacts은 객체의 배열이라고 가정합니다.

실제로 동작하는 바이올린은 여기에 있습니다 : http://jsfiddle.net/brettwp/yfcuL/ 또한

코드 :

당신이 여기에 포함 된 한 것과 분명히 아무 문제가 없습니다
<div id="contacts">EMPTY</div> 
<script id="contactTmpl" type="text/x-jquery-tmpl"> 
    {{each(index,contact) contacts}}  
     <div class="contact" data-index="${index}"> 
      <label>First name</label> <input class="tomap" name="firstName" value="${contact.firstName}"> 
      <label>Last name</label> <input class="tomap" name="lastName" value="${contact.lastName}"> 
      <label>Number</label> <input class="tomap" name="phone" value="${contact.phone}"> 
      <div class="tools"> 
       <button class="delete"></button> 
      </div> 
     </div> 
    {{/each}} 
</script> 

$(function(){ 
    $("#contactTmpl").tmpl({contacts: contacts}).appendTo("#contacts"); 
}); 
관련 문제