|
|
资讯缩略图:
资讯发布日期:2026-01-21
资讯发布简介:H5网页被主脚本获取值用法
资讯关键词:AIWROK软件H5网页被主脚本获取值用法
资讯所属分类:IT资讯 SEO资讯
联系:
① 本信息收集于网络,如有不对的地方欢迎联系我纠正! ② 本信息免费收录,不存在价格的问题! ③ 如果您的网站也想这样出现在这里,请您加好友情链接,我当天会审核通过!
④友情链接关键字:软件网站分类目录 网址:http://www.postbbs.com/
资讯详细描述
 | |  |  | AIWROK软件H5网页被主 脚本获取值用法
- /**
- *🍎交流QQ群711841924群一,苹果内测群,528816639
- * H5页面值获取脚本
- * 适用于AIWROK IDE与H5页面交互
- */
- var publicData = (function() {
- var dataStore = {};
-
- return {
- set: function(key, value) {
- dataStore[key] = value;
- printl('已设置公共数据: ' + key + ' = ' + value);
- },
-
- get: function(key) {
- var value = dataStore[key];
- printl('获取公共数据: ' + key + ' = ' + value);
- return value;
- },
-
- remove: function(key) {
- var oldValue = dataStore[key];
- delete dataStore[key];
- printl('已删除公共数据: ' + key + ', 原值: ' + oldValue);
- return oldValue;
- },
-
- clear: function() {
- dataStore = {};
- printl('已清空所有公共数据');
- },
-
- has: function(key) {
- return key in dataStore;
- },
-
- keys: function() {
- return Object.keys(dataStore);
- },
-
- size: function() {
- return Object.keys(dataStore).length;
- }
- };
- })();
- var webView = null;
- function setWebView(webViewRef) {
- webView = webViewRef;
- printl('WebView引用已设置,可以开始与H5页面交互');
- }
- function printl(message) {
- console.log(message);
- if (typeof showResult === 'function') {
- showResult(message);
- }
- }
- function showResult(message) {
- try {
- if (typeof document !== 'undefined' && document.getElementById('result')) {
- document.getElementById('result').innerText = message;
- } else {
- console.log(message);
- }
- } catch (e) {
- console.log(message);
- }
- }
- function getH5Value(jsCode) {
- if (!webView) {
- printl('错误:WebView未设置,请先调用setWebView()');
- return null;
- }
-
- try {
- if (typeof webView.runWebJs === 'function') {
- var result = webView.runWebJs(jsCode);
- return result;
- } else {
- printl('WebView的runWebJs方法不可用');
- return null;
- }
- } catch (e) {
- printl('runWebJs方法执行失败: ' + e.message);
- return null;
- }
- }
- function getH5TextValue() {
- var jsCode = "(function() {" +
- "var input = document.getElementById('input1');" +
- "if (input) {" +
- " return input.value;" +
- "} else {" +
- " var inputs = document.getElementsByName('input1');" +
- " if (inputs.length > 0) {" +
- " return inputs[0].value;" +
- " } else {" +
- " return '未找到文本框元素';" +
- " }" +
- "}" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('文本框值: ' + result);
- return result;
- }
- function getH5DropdownValue() {
- var jsCode = "(function() {" +
- "var dropdown = document.getElementById('dropdown');" +
- "if (dropdown) {" +
- " return dropdown.options[dropdown.selectedIndex].value;" +
- "} else {" +
- " return '未找到下拉框元素';" +
- "}" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('下拉框值: ' + result);
- return result;
- }
- function getH5RadioValue() {
- var jsCode = "(function() {" +
- "var radios = document.getElementsByName('radiogroup');" +
- "for (var i = 0; i < radios.length; i++) {" +
- " if (radios[i].checked) {" +
- " return radios[i].value;" +
- " }" +
- "}" +
- "return '未选择';" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('单选按钮值: ' + result);
- return result;
- }
- function getH5CheckboxValue() {
- var jsCode = "(function() {" +
- "var checkboxes = document.querySelectorAll('input[name=\"check1\"], input[name=\"check2\"]');" +
- "var selectedValues = [];" +
- "for (var i = 0; i < checkboxes.length; i++) {" +
- " if (checkboxes[i].checked) {" +
- " selectedValues.push(checkboxes[i].value);" +
- " }" +
- "}" +
- "return selectedValues.length > 0 ? selectedValues.join(',') : '未选择';" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('多选框值: ' + result);
- return result;
- }
- function getH5TaskSelections() {
- var jsCode = "(function() {" +
- "var taskCheckboxes = document.querySelectorAll('input[name=\"taskgroup\"]');" +
- "var selectedTasks = [];" +
- "for (var i = 0; i < taskCheckboxes.length; i++) {" +
- " if (taskCheckboxes[i].checked) {" +
- " selectedTasks.push(taskCheckboxes[i].value);" +
- " }" +
- "}" +
- "return selectedTasks.length > 0 ? selectedTasks.join(',') : '未选择任务';" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('任务选项值: ' + result);
- return result;
- }
- function getH5AllTasksInfo() {
- var jsCode = "(function() {" +
- "var taskCheckboxes = document.querySelectorAll('input[name=\"taskgroup\"]');" +
- "var tasksInfo = [];" +
- "for (var i = 0; i < taskCheckboxes.length; i++) {" +
- " tasksInfo.push({" +
- " id: taskCheckboxes[i].id," +
- " value: taskCheckboxes[i].value," +
- " checked: taskCheckboxes[i].checked" +
- " });" +
- "}" +
- "return JSON.stringify(tasksInfo);" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('所有任务选项信息: ' + result);
- return result;
- }
- function getH5InteractionInfo() {
- var jsCode = "(function() {" +
- "try {" +
- "var info = {};" +
- "info.currentStatus = document.getElementById('current-status') ? document.getElementById('current-status').textContent : '未找到';" +
- "info.connectionStatus = document.getElementById('connection-status') ? document.getElementById('connection-status').textContent : '未找到';" +
- "info.lastInteraction = document.getElementById('last-interaction') ? document.getElementById('last-interaction').textContent : '未找到';" +
- "info.availableTasks = document.getElementById('available-tasks') ? document.getElementById('available-tasks').textContent : '未找到';" +
- "return JSON.stringify(info);" +
- "} catch(e) { return 'Error: ' + e.message; }" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('交互信息: ' + result);
- return result;
- }
- function getAllH5FormValues() {
- var jsCode = "(function() {" +
- "try {" +
- "var formData = {};" +
- "var input = document.getElementById('input1');" +
- "formData.input1 = input ? input.value : '未找到';" +
- "var dropdown = document.getElementById('dropdown');" +
- "formData.dropdown = dropdown ? dropdown.options[dropdown.selectedIndex].value : '未找到';" +
- "var radios = document.getElementsByName('radiogroup');" +
- "formData.radio = '未选择';" +
- "for (var i = 0; i < radios.length; i++) {" +
- " if (radios[i].checked) {" +
- " formData.radio = radios[i].value;" +
- " break;" +
- " }" +
- "}" +
- "var checkboxes = document.querySelectorAll('input[name=\"check1\"], input[name=\"check2\"]');" +
- "formData.checkboxes = [];" +
- "for (var i = 0; i < checkboxes.length; i++) {" +
- " if (checkboxes[i].checked) {" +
- " formData.checkboxes.push(checkboxes[i].value);" +
- " }" +
- "}" +
- "var taskCheckboxes = document.querySelectorAll('input[name=\"taskgroup\"]');" +
- "formData.tasks = [];" +
- "for (var i = 0; i < taskCheckboxes.length; i++) {" +
- " if (taskCheckboxes[i].checked) {" +
- " formData.tasks.push(taskCheckboxes[i].value);" +
- " }" +
- "}" +
- "return JSON.stringify(formData);" +
- "} catch(e) { return 'Error: ' + e.message; }" +
- "})()";
-
- var result = getH5Value(jsCode);
- printl('所有表单值: ' + result);
- return result;
- }
- function 演示获取H5值() {
- printl('=== 开始演示从H5页面获取表单值 ===');
-
- if (!webView) {
- printl('WebView未设置,请先设置WebView引用');
- return;
- }
-
- var textValue = getH5TextValue();
- var dropdownValue = getH5DropdownValue();
- var radioValue = getH5RadioValue();
- var checkboxValue = getH5CheckboxValue();
- var taskValue = getH5TaskSelections();
-
- printl('=== H5表单值获取演示完成 ===');
- }
- function demoGetH5Values() {
- 演示获取H5值();
- }
- function 获取H5选中项目() {
- printl('=== 开始获取H5页面选中的项目 ===');
-
- if (!webView) {
- printl('WebView未设置,请先设置WebView引用');
- return;
- }
-
- var selectedTasks = getH5TaskSelections();
- printl('H5页面选中的项目: ' + selectedTasks);
-
- printl('=== 获取H5页面选中项目完成 ===');
- }
- function getH5SelectedItems() {
- 获取H5选中项目();
- }
- function 测试函数2() {
- printl('测试函数2运行中');
-
- printl('=== 开始从H5页面获取表单值 ===');
-
- var allValues = getAllH5FormValues();
- printl('所有表单值: ' + allValues);
-
- printl('=== H5表单值获取完成 ===');
- }
- function testFunction2() {
- 测试函数2();
- }
- function 演示公共数据操作() {
- printl('=== 开始演示公共数据操作 ===');
-
- publicData.set('文本值', '这是一个文本值');
- publicData.set('数字值', 123);
- publicData.set('布尔值', true);
- publicData.set('对象值', {name: '测试', count: 1});
-
- var textValue = publicData.get('文本值');
- printl('获取到文本值: ' + textValue);
-
- var numValue = publicData.get('数字值');
- printl('获取到数字值: ' + numValue);
-
- var boolValue = publicData.get('布尔值');
- printl('获取到布尔值: ' + boolValue);
-
- var objValue = publicData.get('对象值');
- printl('获取到对象值: ' + JSON.stringify(objValue));
-
- var hasText = publicData.has('文本值');
- printl('是否存在文本值键: ' + hasText);
-
- var allKeys = publicData.keys();
- printl('所有键: ' + allKeys.join(', '));
-
- var size = publicData.size();
- printl('数据项数量: ' + size);
-
- printl('=== 公共数据操作演示完成 ===');
- }
- function 主要演示() {
- setWebView(webView);
- 演示获取H5值();
- 测试函数2();
- }
- function 执行所有演示() {
- printl('开始执行所有演示...');
- 演示获取H5值();
- 测试函数2();
- 演示公共数据操作();
- printl('所有演示执行完毕');
- }
- function 执行H5演示() {
- printl('开始执行H5值获取演示...');
- 演示获取H5值();
- printl('H5值获取演示执行完毕');
- }
- function 执行公共数据演示() {
- printl('开始执行公共数据演示...');
- 演示公共数据操作();
- printl('公共数据演示执行完毕');
- }
- function 获取演示页面所有数据() {
- printl('=== 开始获取演示页面所有数据 ===');
-
- if (!webView) {
- printl('WebView未设置,请先设置WebView引用');
- return null;
- }
-
- var allData = {};
-
- allData.input1 = getH5TextValue();
- allData.dropdown = getH5DropdownValue();
- allData.radio = getH5RadioValue();
- allData.checkboxes = getH5CheckboxValue();
- allData.selectedTasks = getH5TaskSelections();
-
- var tasksInfoStr = getH5AllTasksInfo();
- try {
- allData.tasksInfo = JSON.parse(tasksInfoStr);
- } catch (e) {
- allData.tasksInfo = tasksInfoStr;
- }
-
- var interactionInfoStr = getH5InteractionInfo();
- try {
- allData.interactionInfo = JSON.parse(interactionInfoStr);
- } catch (e) {
- allData.interactionInfo = interactionInfoStr;
- }
-
- var allFormValuesStr = getAllH5FormValues();
- try {
- allData.allFormValues = JSON.parse(allFormValuesStr);
- } catch (e) {
- allData.allFormValues = allFormValuesStr;
- }
-
- publicData.set('演示页面数据', allData);
-
- printl('=== 演示页面所有数据获取完成 ===');
- printl('完整数据: ' + JSON.stringify(allData, null, 2));
-
- return allData;
- }
- function getAllDemoPageData() {
- return 获取演示页面所有数据();
- }
- function 执行获取演示数据() {
- printl('开始执行获取演示页面数据...');
- var allData = 获取演示页面所有数据();
- printl('获取演示页面数据执行完毕');
- return allData;
- }
复制代码
| |  | |  |
|
untoAIWROK软件创建可暂停恢复的多线程任务nextnocontent
|