Foxtable(狐表)用户栏目专家坐堂 → 移动开发,使用框架动态生成的网页,如何校验表单数据?


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

主题:移动开发,使用框架动态生成的网页,如何校验表单数据?

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


加好友 发短信
等级:六尾狐 帖子:1218 积分:8451 威望:0 精华:0 注册:2016/2/2 21:52:00
移动开发,使用框架动态生成的网页,如何校验表单数据?  发帖心情 Post By:2017/3/26 13:38:00 [只看该作者]

移动开发,使用框架动态生成的网页,如何校验表单数据?

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


加好友 发短信
等级:六尾狐 帖子:1218 积分:8451 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2017/3/26 13:39:00 [只看该作者]

比如是否为空,长度是否符合等

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/27 0:54:00 [只看该作者]


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


加好友 发短信
等级:六尾狐 帖子:1218 积分:8451 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2017/3/27 7:44:00 [只看该作者]

能否给个完整的示例,因为:
1. js校验后,如果不符,如何阻止表单提交?帮助上没有

2. 后台校验,  我是把httprequest 的case的代码放在函数中,而函数中的return 是要有返回值的,随便写一个好像也有问题。


3、异步校验暂时没有测试
[此贴子已经被作者于2017/3/27 8:36:58编辑过]

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


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

1、帮助只针对自己的框架,其它框架自己去学学相关的html知识,网上搜搜“ onsubmit”事件的说明

2、上传代码说明

3、用过有问题再说

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


加好友 发短信
等级:六尾狐 帖子:1218 积分:8451 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2017/3/27 11:04:00 [只看该作者]

http://www.foxtable.com/mobilehelp/scr/0059.htm   验证数据

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


加好友 发短信
等级:六尾狐 帖子:1218 积分:8451 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2017/3/27 13:27:00 [只看该作者]

下面的代码, .AddButton("btn1","返回").Attribute = ""   这句,为什么在出现报错页面时,点击“返回”按钮,点一下没有反应仍然停在错误页面,点第二下,不能返回表单继续填,而是返回表单上层的页面?
Dim nms1() As String = {"科室","姓名","岗位","电话","提交日期"} '不能为空的列名数组 
            For Each nm As String In nms1     
                If e.PostValues(nm)="" Then '生成错误提示页 
                   ' msgbox("测试1")
                    With wb.AddMsgPage("","msgpage","增加失败", nm & "列不能为空!") 
                        .icon = "Warn" '改变图标
                        .AddButton("btn1","返回").Attribute = ""
                    End With
                    e.WriteString(wb.Build)
                    Return "wrong"   '必须返回
                End If
            Next




自定义函数satissurvey代码

Dim e As RequestEventArgs = args(0)
Dim wb As New weui

        wb.Title="东软服务满意度调查"
        wb.AppendHTML("<link rel='stylesheet' href='../ajax/jquery.mobile/1.1.1/jquery.mobile-1.1.1.min.css'/>",True)     '引入样式文件,参数True表示添加到head区
        wb.AppendHTML("<link rel='stylesheet' href='../xdf/img/main.css'/>",True)             '引入样式文伯
        wb.AppendHTML("<script src='../ajax/libs/jquery/1.7.1/jquery.min.js'></script>",True)       '引入jquery
        wb.AppendHTML("<script src='../ajax/jquery.mobile/1.1.1/jquery.mobile-1.1.1.min.js'></script>",True)     '引入jquery
        wb.AppendHTML("<script src='../scripts/main.js'></script>",True)      '引入jquery


       wb.InsertHTML("<div data-theme='g' data-role='page' data-position='fixed'>")      '页内容样式     不能加</div>  加在好几个地方都不能正常显示页头页脚
      'wb.InsertHTML("<h3 align='center' style='margin-top:5px'>服务满意度调查</h3>")      '插入表头
If e.PostValues.Count = 0 Then '生成增加调查表网页
    wb.AddForm("","form1","SatisSurvey.htm")

 ' wb.InsertHTML("form1","<fieldset data-role='controlgroup' data-Type='horizontal'>")     '起效果了
    With wb.AddRadioGroup("form1","q1","应用软件功能是否满足业务需要?")
                .Add("a1","是").Value="是"      '第一个"是" 是界面输入提示, 第二个"是"是往数据库存的值
                .Add("a2","否").Value="否"         
    End With
   
   
    With wb.AddRadioGroup("form1","q2","应用软件是否容易操作和使用?")
                .Add("b1","是").Value="是"
                .Add("b2","否").Value="否"
    End With

    With wb.AddRadioGroup("form1","q3","应用软件是否容易操作和使用?")
                .Add("c1","是").Value="是"
                .Add("c2","否").Value="否"
    End With

    With wb.AddRadioGroup("form1","q4","项目人员是否有效沟通并及时反馈?")
                .Add("d1","是").Value="是"
                .Add("d2","否").Value="否"
    End With

    With wb.AddRadioGroup("form1","q5","您对项目人员工作态度是否满意?")
                .Add("e1","是").Value="是"
                .Add("e2","否").Value="否"
    End With

    With wb.AddRadioGroup("form1","q6","您对项目人员技术水平是否认可")
                .Add("f1","是").Value="是"
                .Add("f2","否").Value="否"
    End With

    With wb.AddRadioGroup("form1","q7","故障响应速度是否及时")
                .Add("g1","是").Value="是"
                .Add("g2","否").Value="否"
    End With

    With wb.AddInputGroup("form1","ipg1","您对培训讲师专业知识的评价")       'ipg1 和下面的ipg2 ipg3名称一定不能重,重了就弹不出网页
            .AddTextArea("q8",2).Placeholder = "请输入80字以内的备注"
           ' .AddInput("q8","正文","text")     '也可以正常弹出
    End With

    With wb.AddInputGroup("form1","ipg2","您对培训资料的评价")
            .AddTextArea("q9",2).Placeholder = "请输入80字以内的备注"
    End With

    With wb.AddInputGroup("form1","ipg3","现阶段科室急需解决的问题")
            .AddTextArea("q10",3).Placeholder = "请输入120字以内的备注"
    End With
'wb.InsertHTML("form1","</fieldset>") 

    With wb.AddInputGroup("form1","ipg4","您的联系方式")
        .AddInput("科室","科室","text")
        .AddInput("姓名","姓名","text")
        '.AddInput("岗位","岗位","text")
        .AddSelect("岗位","岗位","医生|护士|财务人员|工程师|行政人员")     '第一个是数据库字段,第二个是 左边的提示
        .AddInput("电话","电话","text")
        .AddInput("提交日期","提交日期","date")
    End With

   With wb.AddButtonGroup("form1","btg1",True)
        .Add("btn1", "确定", "submit")       '.Attribute =""
   End With


Else '保存新增的调查单
       '以下为验证表单数据是否正常
'msgbox("测试")
         Dim nms1() As String = {"科室","姓名","岗位","电话","提交日期"} '不能为空的列名数组 
            For Each nm As String In nms1
                If e.PostValues(nm)="" Then '生成错误提示页 
                   ' msgbox("测试1")
                    With wb.AddMsgPage("","msgpage","增加失败", nm & "列不能为空!") 
                        .icon = "Warn" '改变图标
                    .AddButton("btn1","返回").Attribute = ""
                    End With
                    e.WriteString(wb.Build)
                    Return "wrong"   '必须返回
                End If
            Next


    Dim dr As DataRow = DataTables("满意度调查表").AddNew()

    Dim nms() As String = {"q1","q2","q3","q4","q5","q6","q7","q8","q9","q10"}
    For Each nm As String In nms
        dr(nm) = e.PostValues(nm)
 '   msgbox(nm & e.PostValues(nm))    ' dr(nm) 为空值
    Next
    dr.Save()

    nms = new String(){"科室","姓名","岗位","电话","提交日期"}
    For Each nm As String In nms
        dr(nm) = e.PostValues(nm)
 '   msgbox(nm & e.PostValues(nm))    ' dr(nm) 为空值
    Next
    dr.Save()


    With wb.AddMsgPage("","msgpage","增加成功", "您的意见我们已经收到,感谢你的反馈!") '增加订单成功提示信息
        .AddButton("btn1","继续增加","SatisSurvey.htm")
       ' .AddButton("btn1","返回列表","list.htm") 
    End With
End If
  'wb.AppendHTML("<script src='../ajax/libs/test.js'></script>",True)          'by wk
  e.WriteString(wb.Build) '生成网页
[此贴子已经被作者于2017/3/27 13:39:37编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1218 积分:8451 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2017/3/27 13:41:00 [只看该作者]

上面的代码始终不完整,上传了个附件

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:完整的satissurvey代码.txt


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/27 14:51:00 [只看该作者]

在首行加入 msgbox( e.PostValues.Count) 看是否触发了事件。

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


加好友 发短信
等级:六尾狐 帖子:1218 积分:8451 威望:0 精华:0 注册:2016/2/2 21:52:00
  发帖心情 Post By:2017/3/27 16:18:00 [只看该作者]

我在  if 下面也放了msgbox,在else下面也放了, 进表单和 提交的时候能弹出, 但点返回按钮的时候没有弹出。   代码要怎么改?
[此贴子已经被作者于2017/3/27 16:20:37编辑过]

 回到顶部
总数 47 1 2 3 4 5 下一页