2013-03-29 1 views
0

나는 며칠 동안이 문제를 해결하기 위해 노력해 왔으며 완전히 미치게 만들었다. 나는 스토리 보드를 사용하고있다.채워진 HTML 양식에서 두 번째 viewcontroller로 데이터를 보내는 방법은 무엇입니까?

웹보기가있는 viewcontroller1이 있습니다. webview는 textField (사용자 이름), 또 다른 textField (암호) 및 버튼 (제출)을 통해 HTML 로그인 양식을 채 웁니다. 버튼을 누르면 HTML 양식에 textFields 입력이 채워집니다. 폼이 채워지고 제출되면 웹 뷰가있는 새로운 뷰 컨트롤러 (viewController2)로 사용자를 보내고 싶습니다. 웹 사이트에서 가져온 것들 중 일부를 채우고 싶습니다. 나는 세상을 위해서 다음과 같은 시각으로 사용자를 보내는 법을 알지 못한다.

또 다른 세부 정보는 로그인 html 양식에 사용자 유형 select가 있다는 것입니다. 따라서 제출 버튼이 전송하는 주소가 다를 수 있습니다. 선생님이 양식을 작성한 경우 반환 된 주소는 "myschool/jsp/teacher/right_teacher_lesson_status.jsp"이고 학생 인 경우에는 다른 학교, 다른 학교에서는 다른 것입니다.

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType: 
(UIWebViewNavigationType)navigationType 
{ 

    if (navigationType == UIWebViewNavigationTypeFormSubmitted) { 
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
    ViewController2 *vc = [storyboard instantiateViewControllerWithIdentifier:@"webview2"]; 
    NSLog(@"Allow navigation to request = %@", request); 

    [self.navigationController pushViewController:vc animated:YES]; 

    return YES; 

} 

NSLog 나

는 "허용 알려줍니다 요청에 대한 탐색 :

은 필자가 UIwebview2이 포함 된 다음 뷰에 사용자를 보내려고하는 코드입니다/myschool/JSP/교사 /support_teacher_lesson_status.jsp "

그래서 webview2에 주소를 알려 주면 분명히 알 수 있습니다. 그러나 어떤 학교 나 사용자 유형인지 알 수 없기 때문에 위의 코드에서 webview2를 받기를 원합니다. 도와주세요. 어떻게 정보를 다음보기로 전달할 수 있습니까?

답변

0

두 개의 텍스트 필드와 피커 메뉴가있는보기를 만드는 것이 좋습니다. 이것은 웹보기보다 훨씬 좋네요. 결과물을 예쁜 방식으로 표시 할 수없는 경우 웹보기를 사용할 수 있지만 가능할 때마다 사용자 정의보기로 사용자 환경을 최적화해야합니다.

데이터를 캡처하는 UIKit 요소가 있으면 다음보기 컨트롤러로 전달하는 것이 쉽습니다.

즉 :

어쩌면 이것은 정말로 HTML 코딩의 문제입니다. "제출"버튼에는 URL에 인수가 포함될 수 있습니다 (POST 대신 GET). 그런 다음 URL을 다음보기 컨트롤러로 전달하면됩니다.

vc2.urlToLoad = request; 

URL을 표시하지 않으므로 가져 오기 변수가 사용자에게 노출되지 않습니다. 서버가 인수를 해석 할 수 있으므로 두 번째보기 컨트롤러에서 구문 분석을 수행 할 필요조차 없습니다 (다른 용도로 사용할 수는 있지만).

+0

두 개의 텍스트 필드가있는보기를 만들었습니다. 웹보기는 숨겨져 있습니다. 제출 단추는 내보기에서 Java를 통해 전달하는 단추, stringByEvaluatingJavaScriptFromString입니다. 여전히 GET 함수를 포함 할 수 있습니까? 아니면 자바 메소드를 웹 서비스로 변경해야합니까? – Pierre

관련 문제