我有一个像这样的html文件。
<body class="iphone" onLoad="doSomething()">
<div id="title_wrapper"><h2 id="title">[[[TITOLO]]]</h2></div>
<h2 id="subtitle">[[[DATA]]]</h2>
<div id="content">
[[[TESTO]]]
</div>
我将它加载到我的UIWebView中,我想用一个NSString变量的内容替换“[[[TESTO]]]”。 我该怎么办?
答案 0 :(得分:7)
您可以使用UIWebView
的{{1}}方法修改HTML后加载HTML:
-stringByEvaluatingJavaScriptFromString:
答案 1 :(得分:6)
为什么必须在javascript中执行此操作?
要在Objective-C中执行此操作,请执行:
NSString *templateHTML = [NSString stringWithContentsOfFile:@"Filename" encoding:NSUTF8Encoding error:NULL];
NSString *finalHTML = [templateHTML stringByReplacingOccurrencesOfString:@"[[TEST0]]" withString:variable];
这将使用您的变量而不是[[TEST0]]来获取HTML,然后可以使用loadHTMLString:baseURL:
将其加载到UIWebView中。
答案 2 :(得分:1)
之前我做过类似的事情,但我是在目标C中做到的。
首先构建你的html文件
[NSString stringWithFormat:@"<body class="iphone" onLoad="doSomething()"><div id="title_wrapper"><h2 id="title">%@</h2></div><h2 id="subtitle">%@</h2><div id="content">%@</div>", titolo ,data, content];
然后将其加载到webview中,就像这样
[webView loadHTMLString:myHtml];