Foxtable(狐表)用户栏目专家坐堂 → js变量传值问题


  共有3112人关注过本帖树形打印复制链接

主题:js变量传值问题

帅哥哟,离线,有人找我吗?
fubblyc
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
js变量传值问题  发帖心情 Post By:2018/8/20 14:27:00 [只看该作者]

蓝老师,js变量传值
function f1usku1() {
    alert(document.getElementById("f1usku1").value);
 //   var txm = "1124"; 
 //    var val= '{"dl":"F","qw":"1","bq":"UP","txm":txm}'; //用这种txm="1124"传过来不生效
    var val= '{"dl":"F","qw":"1","bq":"UP","txm":"1124"}';  //现在只有这样直接写txm的值才能生效,其他的变量传过来的不行
    var result = sendAjaxJSON(val,"jssj.htm","",false);
    alert(result);
}

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112364 积分:572076 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/20 14:34:00 [只看该作者]

var val= '{"dl":"F","qw":"1","bq":"UP","txm":"' + txm + '"}'; 

一把不使用拼字符串的方式,用对象

var o  = {}
o.dl = "F"
o.qw= "1"
o.txmtxm
var result = sendAjaxJSON(o,"jssj.htm","",false);

 回到顶部
帅哥哟,离线,有人找我吗?
fubblyc
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2018/8/20 14:53:00 [只看该作者]

蓝老师,这样改可以了。
对了,js里面写中文,会变成乱码,要怎么处理呢。。。

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112364 积分:572076 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/20 14:57:00 [只看该作者]

编码问题。使用utf-8。

另外不要使用记事本编辑js

 回到顶部
帅哥哟,离线,有人找我吗?
fubblyc
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2018/8/20 15:49:00 [只看该作者]

好的,谢谢蓝老师~~

 回到顶部
帅哥哟,离线,有人找我吗?
fubblyc
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2018/8/21 9:14:00 [只看该作者]

蓝老师,

这个在SKU1输入内容,安卓手机没问题(会提示增加成功,在数据库表会体现增加了一行数据),苹果手机点 扫一扫 没有反应(没有提示 ,也没有增加数据)。。。

js:
function f1usku1() {
    var obj=new Object();
    obj.rq = document.getElementById("rq").value;
    obj.md = document.getElementById("md").value;
    obj.dl = document.getElementById("dl").value;
    obj.qw = document.getElementById("qw").value;
    obj.bq = "UP";
    obj.txm = document.getElementById("f1usku1").value;
    var result = sendAjaxJSON(obj,"jssj.htm","",false);
    alert(result);
}

tjsj.htm(提交数据)
        With .AddVcodeButton("f1uscan1","扫一扫",2)
            .Attribute=";" '增加获取验证码按钮,2表示显示在右边
        End With  

jssj.htm(接收数据)
Dim e As  RequestEventArgs = args(0)
'output.show("1")
Dim dr As DataRow = DataTables("板墙陈列数据").SQLAddNew()
'output.show("2")
Dim jo As JObject = JObject.Parse(e.PlainText) '解析JSON数据
'output.show("3")
dr("门店名称") = jo("md")
dr("调整日期") = jo("rq")
dr("大类") = jo("dl")
dr("区位") = jo("qw")
dr("板墙") = jo("bq")
dr("条码") = jo("txm")
'output.show("4")
dr.save()
e.WriteString("增加成功!")
'output.show("5")


js文件之前是用txt写的,现在有另存为utf-8的格式

[此贴子已经被作者于2018/8/21 9:15:43编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112364 积分:572076 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/21 9:23:00 [只看该作者]

没有手机测试。试试
1、把输入框的id改改,不要和函数名称一致
<input id='f1usku1' name='f1usku1' type='text' placeholder='点右边扫吊牌条码' class='weui_input'/>
</div>
<div class='weui_cell_ft'>
<a href='javascript:;' class='weui-vcode-btn' name='f1uscan1' id='f1uscan1' onclick='f1usku1()';>扫一扫</a>


2、下面提示能不能弹出
js:
function f1usku1() {
alert('1');
    var obj=new Object();
    obj.rq = document.getElementById("rq").value;
    obj.md = document.getElementById("md").value;
    obj.dl = document.getElementById("dl").value;
    obj.qw = document.getElementById("qw").value;
    obj.bq = "UP";
    obj.txm = document.getElementById("f1usku1").value;
alert(obj);
    var result = sendAjaxJSON(obj,"jssj.htm","",false);
    alert(result);
}

[此贴子已经被作者于2018/8/21 9:23:56编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
fubblyc
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2018/8/21 11:17:00 [只看该作者]

蓝老师,用第一种方法可以了。蓝老师,苹果的提示,有带网站,因为是用js的alert。
要想用FT提供的提示的
js:
function hf1usku1() {
    var obj=new Object();
    obj.rq = document.getElementById("rq").value;
    obj.md = document.getElementById("md").value;
    obj.dl = document.getElementById("dl").value;
    obj.qw = document.getElementById("qw").value;
    obj.bq = "UP";
    obj.txm = document.getElementById("f1usku1").value;
    var result = sendAjaxJSON(obj,"jssj.htm","",false);
    alert(result);
}

tjsj.htm(提交数据)
        With .AddVcodeButton("f1uscan1","扫一扫",2)
            .Attribute="onclic k='hf1usku1()';"
        End With  

jssj.htm(接收数据)
Dim e As  RequestEventArgs = args(0)
'output.show("1")
Dim dr As DataRow = DataTables("板墙陈列数据").SQLAddNew()
'output.show("2")
Dim jo As JObject = JObject.Parse(e.PlainText) '解析JSON数据
'output.show("3")
dr("门店名称") = jo("md")
dr("调整日期") = jo("rq")
dr("大类") = jo("dl")
dr("区位") = jo("qw")
dr("板墙") = jo("bq")
dr("条码") = jo("txm")
'output.show("4")
dr.save()
e.WriteString("增加成功!")
'output.show("5")


此主题相关图片如下:微信图片_20180821093641.jpg
按此在新窗口浏览图片

[此贴子已经被作者于2018/8/21 11:17:28编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
fubblyc
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2018/8/21 11:41:00 [只看该作者]

百度查了,用了重新alert,去掉了网址了:
    window.alert = function(name){
        var iframe = document.createElement("IFRAME");
        iframe.style.display="none";
        iframe.setAttribute("src", 'data:text/plain,');
        document.documentElement.appendChild(iframe);
        window.frames[0].window.alert(name);
        iframe.parentNode.removeChild(iframe);
    }

那想实现FT的提示方式,有办法吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112364 积分:572076 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/21 11:59:00 [只看该作者]


 回到顶部
总数 14 1 2 下一页