起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2439|回复: 6

[结贴] JAVA调用JS的结果值怎样传入WeX5页面组件中?

[复制链接]

30

主题

70

帖子

294

积分

中级会员

Rank: 3Rank: 3

积分
294
QQ
发表于 2018-12-27 16:38:48 | 显示全部楼层 |阅读模式
我有一个PDA项目,按键扫描后的结果是通过JAVA调用JS传回页面的,能把扫描结果传回WeX5页面,用Alert(code)可以显示扫描结果,但是却不能将扫描结果设置到WeX5页面的组件中,比如设置到input-$UI/system/components/justep/input/input组件,用以下方法可以在input组件中显示,但当焦点定位到input组件时,结果值就消失不见了,也就是好像没有给input组件值设置成功。JAVA调用的JS代码只能放在WeX5页面的Model外面,否则实现不了JAVA调用JS,JS代码如下:
define(function(require){
        var $ = require("jquery");
        var justep = require("$UI/system/lib/justep");
        require("cordova!cordova-plugin-device");
        require("cordova!com.ss.pda"); //PDA插件
        var pdaManager = ss.pdaManager;
       
        (中间代码省略)

        return Model;
});


//**按键扫描
function scanResult(code){
        alert(code); //code显示有值
    var input = getElementByAttr("input","xid","input_Msg");
    input[0].value = code;
}

function getElementByAttr(tag,attr,value)
{
    var aElements=this.document.getElementsByTagName(tag);
    var aEle=[];
    for(var i=0;i<aElements.length;i++)
    {
        if(aElements[i].getAttribute(attr)==value)
            aEle.push( aElements[i] );
    }
    return aEle;
}


请问如何将JS的扫描结果值code传入到WeX5页面的组件中?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36176
发表于 2019-1-2 15:48:09 | 显示全部楼层
input的bind-ref关联data的关系了吗?如果关联了关系就用data的setValue方法给关系赋值

远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

30

主题

70

帖子

294

积分

中级会员

Rank: 3Rank: 3

积分
294
QQ
 楼主| 发表于 2019-1-8 13:56:08 | 显示全部楼层
jishuang 发表于 2019-1-2 15:48
input的bind-ref关联data的关系了吗?如果关联了关系就用data的setValue方法给关系赋值

...

input的bind-ref关联了data也不行,后来试了用input(html)的就可以,但用justep的input组件就不行,应该是一个BUG吧?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36176
发表于 2019-1-9 14:57:22 | 显示全部楼层
通过data的setValue方法赋值应该不会有问题
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

30

主题

70

帖子

294

积分

中级会员

Rank: 3Rank: 3

积分
294
QQ
 楼主| 发表于 2019-1-17 09:26:16 | 显示全部楼层
jishuang 发表于 2019-1-9 14:57
通过data的setValue方法赋值应该不会有问题

JS函数不是在Model里面的,而是在Model外面的,能用data的setValue吗?如何使用呢?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36176
发表于 2019-1-17 17:01:46 | 显示全部楼层
那就不要设置bind-ref关联data,然后直接用jquery的方式获取input去赋值
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

30

主题

70

帖子

294

积分

中级会员

Rank: 3Rank: 3

积分
294
QQ
 楼主| 发表于 2019-1-18 10:51:42 | 显示全部楼层
jishuang 发表于 2019-1-17 17:01
那就不要设置bind-ref关联data,然后直接用jquery的方式获取input去赋值

结贴吧,暂时也只能这样了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-10 17:17 , Processed in 0.094964 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表