2014-04-08 2 views
0

WebView를 사용하여 사용자 지정 데이터 양식을 표시하는 Mac OS 네이티브 응용 프로그램을 작성하고 있습니다. 사용자는이 양식을 작성하여 응용 프로그램에 데이터를 입력 할 수 있습니다. 나는이 html 양식의 일부로 제출 된 모든 데이터를 캡처 할 수 있어야합니다.WebView에서 웹 폼 데이터를 캡처하는 방법은 무엇입니까?

예를 들어 사용자가 이름을 입력하는 데 사용할 수있는 텍스트 필드가 있고 그 옆에 '확인'버튼이있어 데이터를 전송할 수 있어야합니다. 사용자가 텍스트 필드에 입력 한 내용.

HTML은 URL이 아니라 로컬로로드됩니다. 이렇게 : [[webview mainFrame] loadHTMLString : htmlSource baseURL : nil];

이렇게 입력 한 데이터를 어떻게 캡처 할 수 있습니까?

+0

당신이 몇 가지 예를 넣을 수 자바 스크립트와의 Obj-C 사이에 전화를 해소하는 방법을 설명합니다 이 질문은 범위가 조금 넓기 때문에 시도한 것을 보여줄 수 있습니까? – miltonb

+0

jQuery에 액세스 할 수 있습니까? – michaels

답변

0

이것은 양식의 submit을 가로 채고 데이터를 추적함으로써 자바 스크립트에서 쉽게 수행 할 수 있습니다. 이 답변을 위해, 나는 당신의 웹 페이지가 jQuery를 사용하는 가정

[webView stringByEvaluatingJavaScriptFromString:@" \ 
$('#yourForm').on('submit', function(e){ \ 
    console.log(JSON.stringify($(this).serializeArray()));\ 
});"]; 

당신은 목표 - C 코드에서이 정보를 필요로하는 경우에, this thread

+0

예, 이와 같은 것은 내가 찾고있는 것입니다. 그러나 이것은 적절하지 않습니다. 여기서 UIWebView를 사용하고 있습니다. iOS 솔루션 인 것 같습니다. MacOS에서 iOS가 아닌 Mac 응용 프로그램을 엄격하게 사용하고 있습니다. WebView 개체를 구체적으로 사용하고 있습니다. (UIWebView 아님) – Eitan

+0

Woops, 미안 해요. 나는 아이디어가 MacOS 응용 프로그램에 이식 가능하다고 생각합니다. 자바 스크립트 기반 구현이기 때문에 – michaels

+0

@Eitan은 iOS가 더 적어 지도록 내 대답을 업데이트했습니다. – michaels

관련 문제