呼叫从SWIFT 3

呼叫从SWIFT 3

问题描述:

javascript函数我怎样才能从迅速JavaScript调用此方法如下呼叫从SWIFT 3

function downloadComplete(status,filename){ 
     alert ("Send Status and file name "+status +" "+filename); 
     $('#status').val (status); 
     $('#filename').val(filename); 
    } 

我能够通过

self.webView?.stringByEvaluatingJavaScriptFromString 
when we get data from Javascript by func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) { 
     if(message.name == "iMessageNameClicked") { 
      print(message) 
      debugPrint(message) 
      print("iMessageBodyClicked: \(message.body)") 
      } 
} 

发送数据,请让我知道如何处理?

在此先感谢

按我的知识,我们可以实现的JavaScript通过以下步骤,迅速调用。步骤1:在HTML文件的OnloadFunction上声明两个变量,如下例所示。

var status = %@; 
var filename = %@; 

第一步:在斯威夫特类让你的HTML内容为一个字符串,通过下面的代码设置你的VALU:

let localfilePath = Bundle.main.url(forResource: "index", withExtension: "html") 
    do { 
     var myHTMLString = try NSString(contentsOf: localfilePath!, encoding: String.Encoding.utf8.rawValue) 
     myHTMLString = NSString(format: myHTMLString, "'\(**YOURVALUE!**)'" , "'\(**YOURVALUE!**)'") 
     webView.loadHTMLString(myHTMLString as String, baseURL: Bundle.main.url(forResource: "ads", withExtension: "js")) //Add your js file here 
    } 
    catch let error as NSError 
    { 
     print("Error: \(error.description)") 
    } 

希望这将帮助你。如果任何让我know.Thanks

我正在使用像这样的WKWebView

func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) { 


     let str = "$('body').attr('data-uid','\(String(uid))');$('body').attr('data-pid','\(String(memberTypeId))');$('body').attr('data-baseurl','\(DataProvider.sharedInstance.baseUrl)');" 


     self.webView.evaluateJavaScript(str) { (id, error) in 
      print(error) 
     } 
    }