2017-11-12 1 views
0
function secondCategory(i) { 
     var liName = 's_li_' + i; 
     $('#' + liName).click(function() { 
     $('.article').load('http://google.com'); 
     }); 
    } 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 

에서 HTML 페이지를로드 할. 하지만 오류가 발생합니다. "웹 사이트 주소를로드하지 못했습니다."교차 출처 요청은 프로토콜 구성에 대해 http, 데이터, 크롬, 크롬 확장, https 만 지원됩니다. "나는 나의 div 태그 내 div 태그, 문서의 HTML 페이지를로드하고자

[http://wedontknow.dothome.co.kr 
./index.html 
http://google.com][1] 

위의 사이트에서 오류가 발생했습니다. html 페이지를로드하려면 어떻게해야합니까? 방금 브라우저에서 직접 HTML 문서를 열 때문에,이 오류가 일어나고있는 로컬 파일에 대한

공유 출처 간 리소스를 사용하도록 설정해야합니다 원인 당신이 그것을 소유하지 않는

답변

1

당신은 외부 웹 사이트를로드 할 수 없습니다. 이 문제를 해결하려면 웹 서버에서 코드를 제공하고 localhost에 액세스해야합니다.

+0

내 로컬에있는 html 파일을로드 할 수없는 이유는 무엇입니까? –

+1

localhost 또는 서버에서 실행 중이거나 직접 html 파일을 여는 중입니까? –

+0

직접 html 파일. 문제가 있다는 것을 깨달았습니다. 하지만 지금까지 localhost에서 html 파일을로드하는 방법을 모르겠습니다. –

0

이것은 실제로 서버 측 문제입니다. 난 항상 .load();을 피 했어. 항상 문제가되는 COR 때문일 뿐이야. 나는 이것에 유약을 것입니다 : Enable CORs

그러나, 나의 추천은, JS 파일에있는 당신의 html 부호 전부를 끈으로두기위한 것이다. 이것은 우아하고 지저분 할 수는 없지만 그 이후에는 빠르고 쉽게 움직일 수 있습니다.

var html = '<div id="div-id"><p>Hi there!</p></div>'; 

$('#target-div').html(html); 

엄청나게 긴 문자열을 얻기 시작할 수는 있어도 그게 항상하는 일입니다. 당신은 그것을 읽고 쉽게 그래서, 그래서 같이 결합합니다 수 :

var html = 
'<div id="wrapper">' + 
    '<div id="inner">' + 
     '<p>Hello!</p>' + 
    '</div>' + 
'</div>'; 

$('#target-div').html(html); 

안 보는 예쁜 일을하지만이 같은 전체 본격적인 웹 응용 프로그램을 작성했습니다, 그것은 보안 문제 (즉, CORS를 제공하지) 그리고 타오르는 빠른.

당신이 다른 서버의 응답이 일 무슨의 말을 가정하면 여러 서버

으로이 방법을 사용하면 항상 좋은 늙은 POST 요청을 할 수 있습니다.

var postData = { 
    optionalData: 1234 
}; 

$.post('https://google.com', postData, function(res) { 
    $('#target-div').html(res) 
});