0

よくわかりませんし、何も見つかりませんでした。

stringByEvaluatingJavascriptFromString:を使用して、Objective-cからページ内のJavaScriptを操作することができました。ただし、iOS UIWebViewからhtmlファイル(アプリのローカル)に生のxmlデータを渡してから、解析されたデータを使用して、フォームフィールドにデータを入力したいと思います。

W3Cドキュメントを見ると、次のようなことをする必要があるようです。

parser = new DOMParser();
xmlString = parser.parseFromString(txt, "text/xml");

XMLからDOMオブジェクトを返す必要があります(ここでは文字列txtで表されます)。これで、このDOMオブジェクトのプロパティにアクセスできるようになります。

xmlString.getElementsByTagName("from")[0].childNodes[0].nodeValue;

次のようなXMLノードがあると仮定します。

<from>Sender</from>

ただし、これは機能していないようです。そのnodeValueを文字列に設定して返すと、nilが返されます。同様に、フォームフィールドは入力されません。

それでは、私の質問は、アプリに埋め込まれたブラウザーがDOMパーサーを利用できるかどうかです。利用できる場合は、そこから値にアクセスするためにどの構文を使用できますか?

4

1 に答える 1

0

解決しましたが、残念ながら非常に高速です。フォームフィールドを設定するときは、innerhtmlではなくVALUEを指定する必要があるようです。

だから私はしました:

document.getElementById("FIELDID").value = 
            xmlString.getElementsByTagName("from")[0].childNodes[0].nodeValue;

また、パラメーターがDOMパーサーに間違って渡されました。2番目のパラメーターは「text/xml」です。

于 2012-06-06T18:25:02.530 に答える