1
UIWebView에서 웹 페이지의 텍스트 상자를 클릭하면 해당 텍스트 상자의 이름을 가져 오는 방법이 있습니까?UIWebview에서 현재 필드를 얻는 방법
stringByEvaluatingJavaScriptFromString을 사용할 수 있어야하지만 이미 필드 또는 텍스트 상자의 이름을 모르는 경우 많이 사용하지 않을 것입니다.
UIWebView에서 웹 페이지의 텍스트 상자를 클릭하면 해당 텍스트 상자의 이름을 가져 오는 방법이 있습니까?UIWebview에서 현재 필드를 얻는 방법
stringByEvaluatingJavaScriptFromString을 사용할 수 있어야하지만 이미 필드 또는 텍스트 상자의 이름을 모르는 경우 많이 사용하지 않을 것입니다.
iOS 웹킷에서 테스트하지는 않았지만 document.activeElement
은 사용자가 입력 필드를 선택한 경우 현재 포커스가있는 요소의 DOM 노드를 제공해야합니다.
노드의 value
속성을 설정하여 내용을 수정할 수 있습니다.
사용자가 입력 필드를 선택하지 않은 경우 activeElement는 DIV
또는 BODY
또는 일부일 수 있습니다. 노드의 속성 인 nodeName
을 검사하여이를 확인할 수 있습니다.
어떤 종류의 노드인지에 따라 innerHtml
특성을 설정해야 할 수 있습니다.
거의 답이었습니다. 나는 어떤 것을 보았지만 그것이 단지 "document.activeElement"라는 것을 깨달았습니다. 그래서 나는 이런 식으로 끝났다 : \t'code'jScriptString = [NSString stringWithFormat : @ "var field = document.activeElement;" \t \t \t \t \t "field.value = 'something';", symbol.data]; \t [myWebView stringByEvaluatingJavaScriptFromString : jScriptString];'code' 답을 수정하면 올바르게 표시됩니다. 감사합니다. – AaronG
id 필드없이 노드의 이름을 원한다면 노드 인스턴스 자체를 가져 오는 것이지 "이름"이 아닙니다. 그러나 나는 당신이 실제로 묻고있는 것을 반영하기 위해 답을 편집 할 것입니다. :-) – codelark
수업을 가져 주셔서 감사합니다. – AaronG