2015-02-07 41 views
1

我正在使用具有WKwebview的IO应用程序,并将配置设置为注入.js文件。Swift ...在运行期间更改.js文件的变量

这是我的JavaScript文件。

var User = "" 
var Pass = "" 

document.getElementsByName('username')[0].value = User 
document.getElementsByName('password')[0].value = password 
submitButton() 

现在代码运行完美时,我先给变量值。 但是我想改变用户和通过NSUserDefualts后来的价值,但我不知道从哪里开始。

我试着玩弄javascript框架,没有任何帮助。

任何想法或方向将不胜感激。

感谢名单

回答

0

我设法解决此问题不下去的注入javascriptfile路径,我可是通过保存用户和NSUserDefaults的传递变量并运行从方法的JavaScript我的UIViewController

内代码不漂亮,但它的作品,看起来像这样:

// the passed would be stored in NSUserDefaults 

let passwd = "test" 

// passEdited simply adds ' ' to the passwd you can just add them to the passwd variable but i like to see every step i am taking 
let passEdited = "'" + passwd +"'" 

// this is the actual java code i would like to run 
var passJS = "document.getElementByName('password')[0].value =" + passEdited 

// check for correct Url before running the java code 
if webView.URL?.absoluteString == "www.YOURWEBSITE" { 
webView.evaluteJavaScript(passJS, completionHandler: nil)