2015-02-07 91 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)