以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 网页中的超长文本处理 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=161015) |
-- 作者:ycs5801 -- 发布时间:2021/3/2 13:50:00 -- 网页中的超长文本处理 用户通过多行文本框输入了200多个字符,手机通过表格浏览时候造成高度太高,每一行内容都需要上下拉动才能看全,设置了列宽也没什么作用,请问这种有什么好的解决方案吗?能不能点一下自动打开一个大文本框进行阅读? |
-- 作者:有点蓝 -- 发布时间:2021/3/2 14:00:00 -- 手工添加行的方式:http://www.foxtable.com/mobilehelp/topics/0068.htm,给行绑定点击事件: 判断如果单元格内容多的,只显示前一部分字符,然后点击单元格的时候,在事件函数里写代码,跳转到一个详情页面 dim s as string = “这里有很多内容......” With .body.AddRow() .AddCell(IIF(s.length > 10, s.substring(0,10) & "...",s)).Attribute= "onclick= \'某某js函数()\'" .AddCell("中国上海") End With |
-- 作者:ycs5801 -- 发布时间:2021/3/2 15:59:00 -- 没看明白 wb.AddForm("","form1","addnew.htm") With wb.AddInputGroup("form1","ipg1","船舶资料") .AddSelect("检查类别","检查类别","进检|出检") .AddInput("泊位","泊位","Text") \'\' .AddInput("靠离日期","靠离日期","datetime-local") .AddInput("靠离日期","靠离日期","datetime-local").value = Format(Date.now,"yyyy-MM-ddTHH:mm") End With With wb.AddInputGroup("form1","ipg2","船舶信息") .AddTextArea("船舶信息",5).Placeholder = "请输入200字以内的船舶基本信息" End With 老师,这是我的代码,主要是船舶信息这个地方字符太多了,您的方法我还是没有思路,能不能再指点一下?
|
-- 作者:有点蓝 -- 发布时间:2021/3/2 16:02:00 -- 在通过表格浏览时候处理,生成表格的时候处理,和这段代码有啥关系? |
-- 作者:ycs5801 -- 发布时间:2021/3/2 16:07:00 -- 对对 我搞错了。这是list代码。 \'根据此页数据生成网页 With wb.AddTable("","Table1") .ColWidth = "12px,,,,,,,,1000px," \'设置列宽 .PageNumber = page \'设置页码 .Primarykey = "_Identify" \'设置主键 .ActiveSheet = "menu" \'设置菜单 .CreateFromDataTable(dt) End With With wb.AddButtonGroup("","btg2", False) \'生成上一页和下一页按钮 If page > 0 Then .Add("btnPrev", "上一页","","List.htm?page=" & page - 1) End If If Endrow < count Then .Add("btnNext", "下一页","","List.htm?page=" & page + 1) End If End With wb.AppendHTML("<script src=\'./lib/table.js\'></script>") \'引入脚本文件 e.WriteString(wb.Build) |
-- 作者:有点蓝 -- 发布时间:2021/3/2 16:16:00 -- 改为手工添加行的方式:http://www.foxtable.com/mobilehelp/topics/0072.htm \'根据此页数据生成网页 With wb.AddTable("","Table1") .ColWidth = "12px,,,,,,,,1000px," \'设置列宽 .PageNumber = page \'设置页码 .Primarykey = "_Identify" \'设置主键 .ActiveSheet = "menu" \'设置菜单 Dim nms() As String = {"","产品","客户","数量","单价","日期"} .Head.AddRow(nms) Dim cnt As Integer For Each r As DataRow In dt.datarows With .Body.AddRow(cnt, r("产品"), r("客户"), r("数量")).Attribute= "onclick= \'alert(""" & r("船舶信息") & """)\'" dim s as string = r("船舶信息") .AddCell(IIF(s.length > 10, s.substring(0,10) & "...",s)) End With Next End With |
-- 作者:ycs5801 -- 发布时间:2021/3/2 22:37:00 -- 报错了 用你这个报错了: .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.5.29.8 错误所在事件:自定义函数,list 详细错误信息: 调用的目标发生了异常。 索引和长度必须引用该字符串内的位置。 参数名: length 另外哪个cnt有什么用处? |
-- 作者:有点蓝 -- 发布时间:2021/3/2 22:55:00 -- 没啥用处,我只是复制帮助代码说明处理逻辑而已,细节处自己思考处理 .AddCell(IIF(s.length > 10, s.substring(0,10) & "...",s)) 改为 if s.length > 10 then .AddCell(s.substring(0,10) & "...") else .AddCell(s) endif
|
-- 作者:ycs5801 -- 发布时间:2021/3/2 23:11:00 -- 还是出错 未找到类型“Boolean”的公共成员“AddCell” |
-- 作者:有点蓝 -- 发布时间:2021/3/2 23:18:00 -- 贴出完整代码说明问题 |