以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 移动开发中 怎么实现筛选出来的数据 直接赋值给文本框呢 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=137793) |
-- 作者:李孝春 -- 发布时间:2019/7/15 23:47:00 -- 移动开发中 怎么实现筛选出来的数据 直接赋值给文本框呢 移动开发中 怎么实现筛选出来的数据 直接赋值给文本框呢 如红色代码根据报修人员 报修编号 可以查找出报修摘要内容 怎么实现当报修人员 报修编号选择后,自动把报修摘要内容显示在黑色加粗部分上呢? 因代码上传限制,被和谐的代码参照图 代码如下: Dim e As RequestEventArgs = args(0) Dim wb As New weui Select Case e.Path Case "baoxiuchuli.htm" If e.PostValues.Count = 0 Then wb.AddPageTitle("","ph1","【报修处理】录入") wb.AddForm("","form1","baoxiuchuli.htm") With wb.AddInputGroup("form1","ipg1","报修处理") .AddInput("处理时间","处理时间","date") With .AddSelect("报修人员","报修人员","|" & DataTables("故障报修").sqlGetComboListString("报修人员","是否处理=\'false\'")) .Attribute = """ End With With .AddSelect("报修编号","报修编号","") .Attribute = """ End With With .AddSelect("报修摘要","报修摘要","") With wb.AddInputGroup("form1","ipg44","报修情况说明") .AddTextArea("报修摘要",5).Placeholder = "" End With End With With wb.AddInputGroup("form1","ipg55","处理内容及处理说明") .AddTextArea("处理内容",5).Placeholder = "请填写故障处理的具体内容 " .AddSelect("处理结果","处理结果","|处理完毕|有待进一步处理|等待反馈结果") End With With wb.AddInputGroup("form1","ipg66","处理人员") With .AddSelect("处理人员","处理人员","|" & DataTables("故障报修").sqlGetComboListString("处理人员","是否处理=\'false\'")) End With .AddInput("运维人员","运维人员","text") End With End With With wb.AddButtonGroup("form1","btg1",True) .Add("btn1", "确定", "submit") End With e.WriteString(wb.Build) Else Dim nms2 = New String() {"rdg1"} Dim nms() As String = {"处理时间","报修编号","报修人员","报修摘要","处理内容","处理结果","处理人员"} \'不能为空的列名数组 For Each nm As String In nms If e.PostValues.ContainsKey(nm) = False Then \'生成错误提示页 With wb.AddMsgPage("","msgpage","增加失败", nm & "列不能为空!") .icon = "Warn" \'改变图标 .AddButton("btn1","返回").Attribute = "" End With e.WriteString(wb.Build) Return "" \' \'必须返回 End If Next nms = New String() {"处理编号","处理时间","报修时间","报修编号","报修内容","报修故障","报修人员","报修摘要","处理内容","处理结果","处理人员","运维人员","处理耗时","处理摘要"} \'重新定义了nms数组,增加了两列. Dim dr As DataRow = DataTables("故障处理").AddNew() For Each nm As String In nms If e.PostValues.ContainsKey(nm) Then dr(nm) = e.PostValues(nm) dr("提交时间")=Date.now End If Next For Each nm As String In nms2 If e.PostValues.ContainsKey(nm) Then dr(e.PostValues(nm)) = True End If Next If dr.IsNull("处理时间") Then dr("处理编号") = Nothing Else Dim bh As String = Format(dr("处理时间"),"yyyyMMdd") \'取得报修编号的8位前缀 If dr("处理编号").StartsWith(bh) = False \'如果报修编号的前8位不符 Dim max As String Dim idx As Integer max = DataTables("故障处理").Compute("Max(处理编号)","处理时间 = #" & dr("处理时间") & "# And [_Identify] <> " & dr("_Identify")) \'取得该天的最大报修编号 If max > "" Then \'如果存在最大报修编号 idx = CInt(max.Substring(9,3)) + 1 \'获得最大报修编号的后三位顺序号,并加1 Else idx = 1 \'否则顺序号等于1 End If dr("处理编号") = bh & "-" & Format(idx,"000") End If End If \' \'保存并生成增加成功提示页面 dr("处理摘要")= "[" & dr("报修人员") & "]同志于[" & dr("报修时间") & "]提出编号为[" & dr("报修编号") & "]的故障报修,经[" & dr("处理人员") & "][" & dr("运维人员") & "]于[" & dr("处理时间") & "]采取[" & dr("处理内容") & "]后,[" & dr("处理结果") & "].请及时使用,若有疑问请报修." dr.save() With wb.AddMsgPage("","msgpage","增加成功", "好好学习,天天向上") \'生成成功提示页 .AddButton("btn1","继续增加","baoxiuchuli.htm") End With End If wb.InsertHTML("<script>其它.parentNode.parentNode.style.display=\'none\'</script>") e.WriteString(wb.Build) End Select
[此贴子已经被作者于2019/7/15 23:49:48编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/7/16 8:46:00 -- 参考:http://www.foxtable.com/mobilehelp/scr/0103.htm |
-- 作者:李孝春 -- 发布时间:2019/7/16 9:54:00 -- 回复:(有点蓝)参考:http://www.foxtable.com/mobi... 有点蓝老师 已经参照这个方法 把报修摘要查找出来了的 我现在就想把这个不用再次选择 而是直接赋值给文本框 显示出来
|
-- 作者:有点蓝 -- 发布时间:2019/7/16 10:17:00 -- 帮助不就是这样用的吗,把区号和邮编一次性就查出来然后给2个控件赋值了。 要给多个个文本框赋值,就一次性返回这些数据进行赋值即可
|
-- 作者:李孝春 -- 发布时间:2019/7/16 11:46:00 -- 回复:(有点蓝)帮助不就是这样用的吗,把区号和邮编... 还是不行 附上全部代码 麻烦啊老师看看啊 表字段 故障报修
报修时间() ----> 日期型 报修编号() ----> 字符型(100) 报修部门() ----> 字符型(100) 报修人员() ----> 字符型(100) 联系电话() ----> 字符型(100) 报修类别() ----> 字符型(100) 报修分类() ----> 字符型(100) 报修内容() ----> 字符型(255) 报修故障() ----> 字符型(255) 是否加急() ----> 逻辑型 处理人员() ----> 字符型(100) 处理电话() ----> 字符型(100) 所属网络() ----> 字符型(100) 报修提交时间() ----> 日期型 是否处理() ----> 逻辑型 处理内容() ----> 字符型(255) 处理结果() ----> 字符型(100) 处理时间() ----> 日期型 处理耗时() ----> 双精度小数 报修摘要() ----> 字符型(1073741823) 处理摘要() ----> 字符型(1073741823) 处理提交时间() ----> 日期型
故障处理
处理编号() ----> 字符型(16) 处理时间() ----> 日期型 报修时间() ----> 日期型 报修编号() ----> 字符型(100) 报修内容() ----> 字符型(255) 报修故障() ----> 字符型(255) 报修人员() ----> 字符型(100) 报修摘要() ----> 字符型(1073741823) 处理内容() ----> 字符型(255) 处理结果() ----> 字符型(255) 处理人员() ----> 字符型(100) 运维人员() ----> 字符型(100) 处理耗时() ----> 双精度小数 处理摘要() ----> 字符型(1073741823) 处理提交时间() ----> 日期型 报修提交时间() ----> 日期型 代码一: Dim e As RequestEventArgs = args(0) Dim wb As New weui Select Case e.Path Case "getCodes.htm" Dim dr As DataRow = DataTables("故障报修").Find("报修人员=\'" & e.Values("报修人员") & "\' and 报修编号=\'" & e.values("报修编号") & "\'") If dr IsNot Nothing Then e.WriteString(dr("报修摘要") & "|" & dr("报修提交时间")) End If End Select 代码二: Dim e As RequestEventArgs = args(0) Dim wb As New weui Select Case e.Path Case "getCounties.htm" Dim pps As String = DataTables("故障报修").GetComboListString("报修人员","是否处理=\'false\'") e.WriteString("|" & pps) End Select 代码三: function setCodes(){ var result= submitAjaxFileds(\'getCodes.htm\',\'\',\'报修人员\',\'报修编号\',false); if(result){ var vals=result.split("|"); if(vals.length==2){ document.getElementById("报修摘要").value=vals[0]; document.getElementById("报修提交时间").value=vals[1]; } } } 代码四: Dim e As RequestEventArgs = args(0) Dim wb As New weui Select Case e.Path Case "baoxiuchuli.htm" If e.PostValues.Count = 0 Then wb.AddPageTitle("","ph1","【报修处理】录入") wb.AddForm("","form1","baoxiuchuli.htm") With wb.AddInputGroup("form1","ipg1","报修处理") .AddInput("处理时间","处理时间","date") 此主题相关图片如下:222.png .AddInput("报修摘要","报修摘要","text") .AddInput("报修提交时间","报修提交时间","text") \'With .AddSelect("报修摘要","报修摘要","text") \'With wb.AddInputGroup("form1","ipg44","报修情况说明") \'.AddTextArea("报修摘要",5).Placeholder = "" \'End With \'End With With wb.AddInputGroup("form1","ipg55","处理内容及处理说明") .AddTextArea("处理内容",5).Placeholder = "请填写故障处理的具体内容 " .AddSelect("处理结果","处理结果","|处理完毕|有待进一步处理|等待反馈结果") End With With wb.AddInputGroup("form1","ipg66","处理人员") With .AddSelect("处理人员","处理人员","|" & DataTables("故障报修").sqlGetComboListString("处理人员","是否处理=\'false\'")) End With .AddInput("运维人员","运维人员","text") End With End With With wb.AddButtonGroup("form1","btg1",True) .Add("btn1", "确定", "submit") End With e.WriteString(wb.Build) Else Dim nms2 = New String() {"rdg1"} Dim nms() As String = {"处理时间","报修编号","报修人员","报修摘要","处理内容","处理结果","处理人员"} \'不能为空的列名数组 For Each nm As String In nms If e.PostValues.ContainsKey(nm) = False Then \'生成错误提示页 With wb.AddMsgPage("","msgpage","增加失败", nm & "列不能为空!") .icon = "Warn" \'改变图标 .AddButton("btn1","返回").Attribute = "" End With e.WriteString(wb.Build) Return "" \' \'必须返回 End If Next nms = New String() {"处理编号","处理时间","报修时间","报修编号","报修内容","报修故障","报修人员","报修摘要","处理内容","处理结果","处理人员","运维人员","处理耗时","处理摘要","处理提交时间"} \'重新定义了nms数组,增加了两列. Dim dr As DataRow = DataTables("故障处理").AddNew() For Each nm As String In nms If e.PostValues.ContainsKey(nm) Then dr(nm) = e.PostValues(nm) End If Next For Each nm As String In nms2 If e.PostValues.ContainsKey(nm) Then dr(e.PostValues(nm)) = True End If Next Dim cmd As New SQLCommand Dim dt As Date cmd.C \'cmd.CommandText = "Select GetDate()" cmd.CommandText = "Select CONVERT(varchar(100), GETDATE(), 20)" dt = cmd.ExecuteScalar() dr("处理提交时间")=dt messagebox.show(dt) messagebox.show(Cdate(dt)) \'cstr(dt) MessageBox.Show(dt & "左边是服务器时间,后边是写入表时间" & dr("处理提交时间")) If dr.IsNull("处理时间") Then dr("处理编号") = Nothing Else Dim bh As String = Format(dr("处理时间"),"yyyyMMdd") \'取得报修编号的8位前缀 If dr("处理编号").StartsWith(bh) = False \'如果报修编号的前8位不符 Dim max As String Dim idx As Integer max = DataTables("故障处理").Compute("Max(处理编号)","处理时间 = #" & dr("处理时间") & "# And [_Identify] <> " & dr("_Identify")) \'取得该天的最大报修编号 If max > "" Then \'如果存在最大报修编号 idx = CInt(max.Substring(9,3)) + 1 \'获得最大报修编号的后三位顺序号,并加1 Else idx = 1 \'否则顺序号等于1 End If dr("处理编号") = bh & "-" & Format(idx,"000") End If End If \' \'保存并生成增加成功提示页面 dr("处理摘要")= "[" & dr("报修人员") & "]同志于[" & dr("报修时间") & "]提出编号为[" & dr("报修编号") & "]的故障报修,经[" & dr("处理人员") & "][" & dr("运维人员") & "]于[" & dr("处理时间") & "]采取[" & dr("处理内容") & "]后,[" & dr("处理结果") & "].请及时使用,若有疑问请报修." If dr.IsNull("报修提交时间") Or dr.IsNull("处理提交时间") Then dr("处理耗时") = Nothing Else Dim tp As TimeSpan tp = dr("处理提交时间") - dr("报修提交时间") dr("处理耗时") = tp.TotalSeconds() \'真正的时段型数据要转换为秒数,才能存入时段列 End If dr.save() With wb.AddMsgPage("","msgpage","增加成功", "好好学习,天天向上") \'生成成功提示页 .AddButton("btn1","继续增加","baoxiuchuli.htm") End With End If wb.InsertHTML("<script>其它.parentNode.parentNode.style.display=\'none\'</script>") wb.AppendHTML("<script src=\'./lib/ajaxform.js\'></script>") \'引入脚本文件 e.WriteString(wb.Build) End Select [此贴子已经被作者于2019/7/16 11:48:09编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/7/16 11:56:00 -- 代码三: function setCodes(){ var result= submitAjaxFileds(\'getCodes.htm\',\'\',\'报修人员\',\'报修编号\',false); alert(result); //这里显示什么内容 if(result){ var vals=result.split("|"); if(vals.length==2){ document.getElementById("报修摘要").value=vals[0]; document.getElementById("报修提交时间").value=vals[1]; } } } |
-- 作者:李孝春 -- 发布时间:2019/7/16 14:55:00 -- 回复:(有点蓝)代码三:function setCodes(){ ... 居然没有任何提示 |
-- 作者:有点蓝 -- 发布时间:2019/7/16 14:59:00 -- 这里呢 代码一: Dim e As RequestEventArgs = args(0) Dim wb As New weui Select Case e.Path Case "getCodes.htm" msgbox(e.Values("报修人员") ) Dim dr As DataRow = DataTables("故障报修").Find("报修人员=\'" & e.Values("报修人员") & "\' and 报修编号=\'" & e.values("报修编号") & "\'") If dr IsNot Nothing Then msgbox(dr("报修摘要") ) e.WriteString(dr("报修摘要") & "|" & dr("报修提交时间")) End If End Select |
-- 作者:李孝春 -- 发布时间:2019/7/16 15:38:00 -- 回复:(有点蓝)这里呢代码一:Dim e As RequestEven... 还是没有反应 |
-- 作者:有点蓝 -- 发布时间:2019/7/16 15:49:00 -- 没有反应是提示框弹不出,还是没有值 |