2017-11-05 1 views
0

< 양식 내에 외부 src 및 data - * = ""매개 변수가있는 < 스크립트> 태그를 추가해야합니다. 페이지에 추가하면됩니다. 그러나 아약스 요청 후 스크립트를 실행하면 스크립트는 데이터 매개 변수를 찾을 수 없다고보고하고 외부 HTML 요소가 필요하다고보고합니다.ajax 요청 후 데이터 매개 변수가있는 외부 <script> 추가

.append()에서 jQuery가 어떻게 든 < 스크립트> 태그를 재정렬하고 (필요한 요소 외부의) 끝에 넣고 데이터 속성을 잃어 버린다.

필요한 데이터 매개 변수를 사용하여 아약스 요청 후 스크립트를 추가하는 다른 방법이 있습니까?

I tried 
$('<script>').attr(/*all data params*/) 

그러나 작동하지 않습니다. 도와주세요

+0

* "< script > 태그에 data - * =" "매개 변수를 호출해야합니다. * 스크립트 태그를"호출 "하지 않습니다. 그게 무슨 뜻 이니? 그들을 생성/추가? 페이지에서 이미 찾았습니까? 또는...? * "... 어쨌든 < script > 태그를 재 배열 ..."* 어떤 스크립트 태그입니까? 어디에서? 스크립트 태그가 페이지에 있으면 재 배열하면 의미가 없습니다. 실제 최종 목표 및 출발점에 대해 명확하게 다루고있는 콘텐츠의 예와 함께 수행해야하는 작업에 대한보다 철저한 설명으로 질문을 업데이트하십시오. –

답변

0

올바른 장소에서 Ajax 요청의 결과를 얻어야합니다. 비동기 작업이므로 데이터 매개 변수가 전혀 채워지지 않은 것일 수 있습니다.

다음 코드는 버튼을 클릭 요청을 보내고 콜백 함수의 결과를 가져옵니다

function callback(data) { 
    // Got result from AJAX, play with DOM + jQuery here 
    console.log("callback called, data : ", data); 
    $("#callbackResultId").html(JSON.stringify(data)); 
} 

$(document).ready(function(e) { 
    $("#textAjaxButtonId").click(function(){ 
    $.ajax({ 
     url: '/echo/json', 
     type: 'POST', 
     dataType: "json", 
     data: { 
     json: JSON.stringify({ 
      'attr': 'value' 
     }) 
     }, 
     success: function(data, status, xhr){ 
     callback(data); 
     } 
    }); 
    }) 
}); 

http://jsfiddle.net/uemaft67/

콜백 기능을 사용하여 Ajax 응답을 얻을 것이다 장소, 따라서 필요한 속성과 함께 DOM 노드를 빌드하십시오.

희망이 도움이됩니다.

관련 문제