Foxtable(狐表)用户栏目专家坐堂 → 移动setAjaxOptions求代码


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

主题:移动setAjaxOptions求代码

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


加好友 发短信
等级:二尾狐 帖子:526 积分:5083 威望:0 精华:0 注册:2015/4/15 15:25:00
移动setAjaxOptions求代码  发帖心情 Post By:2017/4/1 11:34:00 [显示全部帖子]

需要的效果是:同一类型/系列的不同机型作对比。
现在机型1/机型2无法获得需要的下拉列表,代码需要如何修改?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:httpserver2017.foxdb



图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看



一.窗口代码如下:
Dim wb As New WeUI
wb.AddPageTitle("","choose","规格型号","")     '标题
wb.AddForm("","form1","choose.htm")     '表单
With wb.AddInputGroup("form1","ipg1","选择规格型号")     '列表
    'DataTables("机器规格").LoadFilter = ""      '加载所有数据
    'DataTables("机器规格").Load()
    With .AddSelect("类型","类型","|" & DataTables("机器规格").SQLGetComboListString("类型"))
        .Attribute = """        'setAjaxOptions用于根据后台数据动态生成列表项目
    End With
    With .AddSelect("系列","系列","")
        .Attribute = """
    End With
    .AddSelect("机型1","机型1","")
    .AddSelect("机型2","机型2","")
End With
With wb.AddButtonGroup("form1","btg1",False)     '按钮
    .Add("btn1", "对比", "submit")
    .Add("btn2", "返回","", "./product.htm")    '跳转到产品首页..也就是上一页
End With
e.WriteString(wb.Build) '生成网页

二:getchoose页面代码如下:
Dim vals As String
If e.PostValues.Count = 1 Then
    vals  = "|" & DataTables("机器规格").SQLGetComboListString("系列","类型 = '" & e.PostValues("类型") & "'")
ElseIf e.PostValues.Count = 2 Then      '当选择<系统>框值时,机型1/机型2的下拉取值框作如下变动  
    If e.PostValues.ContainsKey("机型1") Then
        Dim Filter As String = "类型 = '" & e.PostValues("类型") & "' And 系列 = '" & e.PostValues("系列") & "'"
        vals = "|" & DataTables("机器规格").SQLGetComboListString("机型", Filter)
    ElseIf e.PostValues.ContainsKey("机型2") Then
        Dim Filter As String = "类型 = '" & e.PostValues("类型") & "' And 系列 = '" & e.PostValues("系列") & "'"
        vals = "|" & DataTables("机器规格").SQLGetComboListString("机型", Filter)
    End If
End If
e.WriteString(vals)
[此贴子已经被作者于2017/4/1 14:02:40编辑过]

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


加好友 发短信
等级:二尾狐 帖子:526 积分:5083 威望:0 精华:0 注册:2015/4/15 15:25:00
  发帖心情 Post By:2017/4/1 18:09:00 [显示全部帖子]

再次请教:是否可以做到行列数据对调?


一.选择比对的机型(表格中列的项目后续还会不断增加)。

图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看


二.将数据行列对调,方便手机端浏览。

图片点击可在新窗口打开查看此主题相关图片如下:22.jpg
图片点击可在新窗口打开查看



三.web/lib/ajaxform.js代码如下:

function getmodelForm(){
setAjaxOptions('机型1','getmodel.htm','类型','系列',false);
setAjaxOptions('机型2','getmodel.htm','类型','系列',false);
}

function getchoose(){
    var result=submitAjaxFileds("valid.htm","","类型","系列","机型1","机型2",false);
    if(result=="OK"){
        return true;
    }
    else{
        showTopTips("toptip1",result,2500);  
        return false;
    }
}


四.Httprequest数据如下所示:
Dim fl As String = "e:\baidu\web\" & e.path
If filesys.FileExists(fl)
    Dim idx As Integer = fl.LastIndexOf(".")
    Dim ext As String  = fl.SubString(idx)
    Select Case ext
        Case ".jpg",".gif",".png",".bmp",".wmf",".js",".css" ,".html",".htm",".zip",".rar"
            e.WriteFile(fl)
            Return '这里必须返回
    End Select
End If


Select Case e.path
    
    Case "choose.htm",""            '2.选择类型/系列/机型
        Dim wb As New WeUI
        
        wb.AddPageTitle("","choose","规格型号","***")     '标题
        
        wb.AddForm("","form1","getchoose.htm").Attribute=""     '表单...接收此表单数据页面为:getchoose.htm...使用js脚本文件,判断是否有输入完整数据
        With wb.AddInputGroup("form1","ipg1","选择规格型号")     '列表
            
            With .AddSelect("类型","类型","|" & DataTables("机器规格").SQLGetComboListString("类型"))       'GetComboListString是从后台所有数据中提取.
                .Attribute = """           'setAjaxOptions用于根据后台数据动态生成列表项目
            End With
            
            With .AddSelect("系列","系列","")      '使用js脚本文件,在./web/lib文件夹中
                .Attribute = ""
            End With
            .AddSelect("机型1","机型1","")
            .AddSelect("机型2","机型2","")
        End With
        
        With wb.AddButtonGroup("form1","btg1",False)     '按钮
            .Add("btn1", "对比", "submit")              '跳转至比对页面
            .Add("btn2", "返回","", "./product.htm")    '跳转到产品首页..也就是上一页
        End With
        
        wb.AppendHTML("<script src='./lib/ajaxform.js'></script>")      '引入脚本文件
        
        e.WriteString(wb.Build) '生成网页
        
    Case "getmodel.htm"              '3.系列/机型下拉列表
        
        Dim vals As String
        If e.PostValues.Count = 1 Then
            vals  = "|" & DataTables("机器规格").SQLGetComboListString("系列","类型 = '" & e.PostValues("类型") & "'")
        ElseIf e.PostValues.Count = 2 Then      '当选择<系统>框值时,机型1/机型2的下拉取值框作如下变动
            Dim Filter As String = "类型 = '" & e.PostValues("类型") & "' And 系列 = '" & e.PostValues("系列") & "'"
            vals = "|" & DataTables("机器规格").SQLGetComboListString("机型", Filter)
        End If
        
        e.WriteString(vals)
        
    Case "getchoose.htm"            '3.对已选择的机型进行对比
        Dim wb As New WeUI
        
        If e.PostValues.ContainsKey("类型") AndAlso e.PostValues.ContainsKey("系列") AndAlso e.PostValues.ContainsKey("机型1") AndAlso e.PostValues.ContainsKey("机型2") Then
            
            e.WriteString("我要开始对比了!下面的不会写,无法产生资料:(")
            ' *****
            ' *****
            ' *****
            
        Else
            e.WriteString("数据不完整,无法对比.请您重新选择!")
        End If
        
End Select


五.另外,未输入完整数据的错误提示,文字很小。没有像帮助中那样,红底色显示在上方。

图片点击可在新窗口打开查看此主题相关图片如下:33.jpg
图片点击可在新窗口打开查看



 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:http20170401.foxdb


[此贴子已经被作者于2017/4/1 18:12:31编辑过]

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


加好友 发短信
等级:二尾狐 帖子:526 积分:5083 威望:0 精华:0 注册:2015/4/15 15:25:00
  发帖心情 Post By:2017/4/3 14:10:00 [显示全部帖子]

麻烦老师:对选择的2个机型,输出对比结果。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:项目web.zip


[此贴子已经被作者于2017/4/4 13:06:43编辑过]

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


加好友 发短信
等级:二尾狐 帖子:526 积分:5083 威望:0 精华:0 注册:2015/4/15 15:25:00
  发帖心情 Post By:2017/4/4 15:27:00 [显示全部帖子]

非常感谢老师。

还有个问题请您帮忙,未输入选择完整数据时错误提示,文字很小。没有像帮助中那样,红底色显示在上方。


图片点击可在新窗口打开查看此主题相关图片如下:20174118112432860.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2017/4/4 15:27:14编辑过]

 回到顶部