2017-02-13 1 views
1

윈도우 10 UWP 웹보기윈도우 10 UWP 웹보기 지역 URL 문제

내가 가지고 윈도우 10 UWP에서 자산 (자산/www /에서 xxx.html) 아래에 www가 폴더에있는 두 개의 HTML 파일, VS에서 두 파일 2015가 출력 디렉토리에 복사되도록 설정됩니다.

index.html 

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>Simple Script</title> 
</head> 

<body> 
    <form action="submit.html" method="post"> 
    Data:<input type="text" name="somedata" > <br> <br> 
    <input type="submit" value="Submit" > 
    </form> 
</body> 
</html> 

and submit.html 

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>Dummy Submission</title> 
</head> 

<body> 
    <h2> Your data has been submitted - Thank You. </h2> 
</body> 
</html> 

웹보기 개체가

<WebView x:Name="WebBrowser" HorizontalAlignment="Left" VerticalAlignment="Top" Height="532" Width="1014" NavigationStarting="WebBrowser_NavigationStarting"/> 

아래와 같이 XMAL에 embbeded하고 인덱스 페이지가 제대로

/// Helper to perform the navigation in webview 
    /// </summary> 
    /// <param name="url"></param> 
    private void NavigateWebview(string url) 
    { 
     try 
     { 
      Uri targetUri = new Uri(url); 
      WebBrowser.Navigate(targetUri); 
     } 
     catch (FormatException myE) 
     { 
      // Bad address 
      WebBrowser.NavigateToString(String.Format("<h1>Address is invalid, try again. Details --> {0}.</h1>", myE.Message)); 
     } 
    } 


NavigateWebview(@"ms-appx-web:///Assets/www/index.html"); 

페이지로드 및 표시에 의해로드되어 있지만 표시되지 않습니다 연결된 'submit.html'페이지, 그냥 비어 있습니다.

내비게이션 이벤트를 트랩하면 발생하지만 아래에 표시된 것처럼 GUID가 접두사로 표시됩니다.

enter image description here 절대 경로 등을 변경하고 문서를 자세하게 읽었지만 이것이 작동하지 않는 이유는 알 수 없습니다.

아이디어하시기 바랍니다들 ...

+0

제출이 index.html과 동일한 폴더에 있으면 index.html을 ms-appx-web : //Submit.html로 변경하면 제대로 작동합니다. – AVK

+0

파일, URL 등의 모든 조합을 시도했습니다. 탐색 이벤트에는 모두 표시되지만 페이지는 표시되지 않습니다. 두 파일은 테스트 한 모든 브라우저에서 완벽하게 작동합니다. 웹보기에서 링크 된 페이지를 표시 할 수 없습니다. DOM의 다른 모든 기능은 정상적으로 작동합니다. –

답변

1

가 발생하지만 나타납니다 않습니다 탐색 이벤트가

은 "GUID"

아래 표와 같은 GUID 접두어로하는 I 트랩 패키지 이름 인 경우 현재 응용 프로그램의 기본값은 입니다. 권한 부분은 URI schemes입니다. 따라서 다른 페이지로 이동하려는 경우이 절대 경로가 옳습니다. 당신은 NavigateWebview(@"ms-appx-web://{your package name}/Assets//www/submit.html");

페이지로드 및 표시 올바르게 코드로 테스트 할 수 있지만,이 문제에 대한

, 그 단지 빈 링크 된 'submit.html'페이지가 표시되지 않습니다, 나는 form 방법을 변경 으로 가면이됩니다.

<form action="submit.html" method="get" id="myform"> 
    Data:<input type="text" name="somedata"> <br> <br> 
    <input type="submit" value="Submit"> 
</form> 
<a href="submit.html">Please Click Me to jump</a> 

form 폼 데이터를 제출 중 두 가지 방법이있다. Get은 URL 문자열을 통해 양식 데이터를 보내며, post는 서버를 통해 양식 데이터를 보냅니다. 내 의견으로는, post 메서드는 먼저 데이터를 게시 한 다음 탐색하고 데이터는 서버 쪽에서 처리됩니다. 게시 된 양식 데이터가 HTML 페이지에서 수신되고 처리되는 것을 보지 못했기 때문에 사용 후 게시 방법이 필요하지 않다고 생각합니다. 방법을 얻으려면 데이터를 받고 자바 스크립트로 처리 할 수 ​​있습니다. here하는 방법입니다.

+0

예.이 문제를 해결하기 위해 수정 한 사항입니다. ms 문서에서이 문제를 발견하지 못했기 때문에이 정보를 어디에 배웠는지 물어볼 수 있습니다. –

+0

@SarahT, 이것은 실제로 uwp 상대적인 지식이 아닙니다. 유감스럽게도이 정보는 uwp 관련 문서에서 보지 못했습니다. HTML [form] (http : // html.com/attributes/form-method /) 태그 정의는 서버 측 지원이 필요하며 MVC 프로젝트의 게시물 요구 사항 코드와 관련된 코드 작성에 대한 경험이있을 수 있습니다. –

+0

감사합니다. 많은 도움을 주셨습니다. –