import sys
from html import html1
from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton# 创建一个 application实例
app = QApplication(sys.argv)
win = QWidget()
win.setWindowTitle('Web页面中的JavaScript与 QWebEngineView交互例子')# 创建一个垂直布局器
layout = QVBoxLayout()
win.setLayout(layout)# 创建一个 QWebEngineView 对象
view = QWebEngineView()# url = 'file:///' + os.path.abspath('page.html')
# url = os.path.abspath('page.html')
# view.load(QUrl(url))
view.setHtml(html1)# 创建一个按钮去调用 JavaScript代码
button = QPushButton('设置全名')def js_callback( result ):print(result)def complete_name():view.page().runJavaScript('completeAndReturnName();', js_callback)# 按钮连接 'complete_name'槽,当点击按钮是会触发信号
button.clicked.connect(complete_name)# 把QWebView和button加载到layout布局中
layout.addWidget(view)
layout.addWidget(button)# 显示窗口和运行app
win.show()
sys.exit(app.exec_())

html文本

html1='''<html><head><title>A Demo Page</title><script language="javascript">// Completes the full-name control and// shows the submit buttonfunction completeAndReturnName() {var fname = document.getElementById('fname').value;var lname = document.getElementById('lname').value;var full = fname + '' + lname;document.getElementById('fullname').value = full;document.getElementById('submit-btn').style.display = 'block';return full;}</script></head><body><form><label for="fname">First name:</label><input type="text" name="fname" id="fname"></input><br /><label for="lname">Last name:</label><input type="text" name="lname" id="lname"></input><br /><label for="fullname">Full name:</label><input disabled type="text" name="fullname" id="fullname"></input><br /><input style="display: none;" type="submit" id="submit-btn"></input></form></body></html>
'''

pyqt webview 执行js相关推荐

  1. Android webview执行JS方法

    ****方法1.webView.loadUrl("javascript:controlfun("+event.getKeyCode()+")"); 方法2. w ...

  2. Swift中viewWeb执行JS

    2019独角兽企业重金招聘Python工程师标准>>> // 自动填充 - webVIew的注入,直接通过js修改 本地浏览器中 缓存的页面内容// 让webView执行js@obj ...

  3. Carson带你学Android:你要的WebView与 JS 交互方式都在这里了

    前言 现在很多App里都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝.京东.聚划算等等,如下图 上述功能是由Android的WebView实现的,其中涉及到Android客户端与 ...

  4. Android WebView与JS的交互方式

    前言 现在很多App都内置了Web网页,比如很多电商App,淘宝.天猫.京东.拼多多.网易考拉等等,那么它们又是如何实现的呢? 这里就不得不涉及到Android的WebView控件,通过WebView ...

  5. Android WebView 与 JS 交互

    2019独角兽企业重金招聘Python工程师标准>>> 在android activity webView的使用,activity中执行html中的js 方法, 和在html 中 调 ...

  6. android webview调js方法,Android中WebView与H5的交互,Native与JS方法互调

    项目中经常用到WebView与H5的交互,一个是H5调本地方法,一个是本地调H5方法,在此记录一下. 首先,启用JS支持 //启用js支持 webSettings.setJavaScriptEnabl ...

  7. WebView---android webview组件如何使用 Webview与js交互

    浏览器控件是每个开发环境都具备的,这为马甲神功提供了用武之地,windows的有webbrowser,android和ios都有webview.只是其引擎不同,相对于微软的webbrowser,and ...

  8. Selenium Webdriver 的使用java执行js代码 解决 ScriptEngine不支持浏览器内置对象window,document的问题

    问题场景: 使用java 掉用js代码,发现 ScriptEngine不支持浏览器内置对象window,document的问题: 问题一:为什么要 用java掉用js代码? 比如在 抓取(爬取)对方网 ...

  9. Flutter:加载本地Html、WebView与JS交互

    本次教程使用的是Flutter官方提供的WebView组件webview_flutter 2.3.1,flutter_android 2.2.1 一. WebView介绍 以下为Flutter Web ...

最新文章

  1. 人人出售56不亏:三方得利
  2. html框架集 target
  3. ORA-12638: 身份证明检索失败 的解决办法
  4. 我的世界服务器怎么显示腐竹来了,我的世界腐竹开服必看manu权限组教程
  5. 【转】mac os、linux及unix之间的关系
  6. Promise-Polyfill源码解析(2)
  7. 提升你的职场竞争力——“低代码开发师”来了!
  8. js tool 方法之删除数组指定项
  9. 1032 挖掘机技术哪家强 (20分)——15行代码AC
  10. 操作系统 --- 进程和管程的不同
  11. Android笔记 xml补间动画
  12. Json string value cannot have line breaks(解决方法)
  13. Dev5.4.0由于与64位的版本不兼容的问题解决方案
  14. Python:体脂计算
  15. 快速解决数据库连接失败
  16. 【路径规划】基于遗传算法求解多式联运运输问题matlab源码
  17. 如何在Java中使用Lambda表达式
  18. 【区块链】(2)区块链概念与体系
  19. API接口安全思考和最佳实践
  20. shell脚本-字符串和变量

热门文章

  1. 手机可以阅读html吗,手机文档html能删除吗
  2. linux 开启LACP 单端口,linux – 使用FTOS在Force10 S50N上PXE启动LACP主机
  3. linux命令安装openssl函数库,ubuntu安装openssl库
  4. linux配置4g网络命令_Linux网络基本配置命令
  5. java httpinvoker漏洞_Spring HttpInvoker 服务端安全验证的和客户端请求配置
  6. “史上最全PyTorch资源汇总“(转载)
  7. 【 FPGA 】组合逻辑中的竞争与险象问题(三)
  8. PHP-Curl模拟HTTP请求
  9. 京东王笑松:7FRESH是“无界零售”理论的业务践行
  10. mxnet安装及NDArray初体验