2016-08-17 2 views
-1

페이지가 완전히로드 된 후 GetAllProperties() 함수를 호출하는 대신 페이지로드 중에 GetAllProperties() 함수를 호출해야합니다.페이지로드시 AJAX 함수 호출 방법

시도해 보았습니다. window.onload = GetAllProperties; 하지만

내 코드는 다음과 같습니다 작동하지 않았다 : 당신은 이미 jQuery를 사용하여, 그렇게하는

<script type="text/javascript"> 

window.onload = GetAllProperties; 


    function GetAllProperties() {  
     $.ajax({ 
      cache: false, 
      url: '/Home/GetAllProperties', 
      type: 'GET', 
      contentType: "application/json; charset=utf-8", 
      success: function (response) { 
       if (response.list.length > 0) { 
        console.log(response.list) 
        var $data = $('<table id="mytable" class="table table-striped"> </table>'); 
        var header = "<thead><tr><th>Property Name</th><th>Edit</th></tr></thead>"; 
        $data.append(header); 
        $.each(response.list, function (i, row) { 
         var $row = $('<tr/>'); 
         $row.append($('<td/>').html(row.PropertyName)); 
         $hidden = $(' <input type="hidden" name="hid" value= "' + row.PropertyId + '">'); 
         $row.append($hidden); 
         $editButton = $("<button class='editbtn' id='mybtn'>Edit</button>");  
         $row.append($editButton); 
         $deleteButton = $("<button class='deletebtn' id='delbtn'>Delete</button>");  
         $row.append($deleteButton); 
         $data.append($row); 
        });   
        $("#MyDiv").empty(); 
        $("#MyDiv").append($data); 
       } 
       else { 

       } 
      }, 
      error: function (r) { 
       alert('Error! Please try again.' + r.responseText); 
       console.log(r);  
      } 
     });  
    }  
</script> 
+0

이 질문은 이전에 요청 된 것과 동일합니다. 질문에 세부 사항을 추가하려면'edit' 버튼을 사용하십시오. 또한 코드가 제대로 작동하는 것으로 보입니다. 요구 사항을 충족시키지 못하면 왜 분명히 설명해야합니까? * 왜 * –

답변

1

이유와 window에 이벤트 리스너를 결합하지?

$(window).on("load", GetAllProperties); 
 

 
function GetAllProperties() { 
 
    alert("loaded"); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
그러나도없이 노력하고 있습니다 :

window.onload = GetAllProperties; 
 

 
function GetAllProperties() { 
 
    alert("loaded"); 
 
}

+0

도움을 주셔서 감사합니다 ...하지만 페이지가로드 된 후 테이블이 채워지는 이유는 무엇입니까? – Lucy

+0

Ajax가 비동기식인지, 아니면? 즉, 함수가 실행되는 동안 페이지가 계속로드됩니다. Ajax 요청이 완료되기 전에 페이지로드가 완료되었을 수 있습니다. @ 루시 – eisbehr

+0

아니, 나는 .. 아주 간단한 코드를 작성하는 것이 더 좋을 것이다. – Lucy