找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 3100|回复: 8

Luci 界面 编程问题

[复制链接]
发表于 2019-5-16 19:23 | 显示全部楼层 |阅读模式
本帖最后由 xqy281 于 2019-5-17 10:06 编辑

小弟,想实现在  参数写入config文件前,判断表单数据。

需要解决的现象:
这七个文本框都是必选项,当enabled 失能时,必选文本框内的值都变为了空值,此时要“保存应用”就会有“一个或多个必选项值为空!”的提示;导致应用无法取消。


大致想法是:当 enabled 为1时判断特定选项是否为空值(隐藏文本框出现,空值提交应用时;提示文本框内容为必选), enabled 为0时就不做处理

可是我写的代码并不起作用
  1. local v=s.uci:get("ser2net",{},"enabled")
  2. if v=="1" then
  3. DeviceId.rmempty = false
  4. SimNumber.rmempty = false
  5. interval.rmempty = false
  6. heartbeat.rmempty = false
  7. MaxDataLen.rmempty = false
  8. DataWaitTime.rmempty = false
  9. ReDialTime.rmempty = false
  10. end
复制代码



有没有大大知道这里该怎么实现啊?
我已经查了好几天资料,还是没有头绪。

还请各位大神多多指点,感激不尽!!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2019-5-16 19:48 | 显示全部楼层
本帖最后由 zxc14236 于 2019-5-16 20:35 编辑

enable是不是同一个配置文件的?利用depends就可以隐藏和显示

点评

但我同时要判断enable下文本框是不是为空值,enable失能了文本框的数值就会被清除掉,然后提交应用的时候就会一直提示“一个或多个必选项为空!” 如果能知道enable是否为1,那么就能判断执行.rmempty = false 了  详情 回复 发表于 2019-5-17 08:57
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-17 08:57 | 显示全部楼层
本帖最后由 xqy281 于 2019-5-17 10:12 编辑
zxc14236 发表于 2019-5-16 19:48
enable是不是同一个配置文件的?利用depends就可以隐藏和显示
代码已经使用了:depends对文本框进行隐藏和显示了,但是隐藏时,文本框都为空值,所以enable为0时“保存应用”会一直提示“一个或多个必选项值为空!”




如果能知道enable是否为1,那么就能判断执行.rmempty = false 了,就不会出现应用服务失能无法提交情况了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

依靠depends隐藏,但是提交后被隐藏的所有值会被清空  详情 回复 发表于 2019-5-17 11:31
回复 支持 反对

使用道具 举报

发表于 2019-5-17 11:31 | 显示全部楼层
xqy281 发表于 2019-5-17 08:57
代码已经使用了:depends对文本框进行隐藏和显示了,但是隐藏时,文本框都为空值,所以enable为0时“保存应 ...

依靠depends隐藏,但是提交后被隐藏的所有值会被清空
  1. test = s:taboption("base", Flag, "test_enable", "启动")
  2. test.rmempty = false

  3. test1 = s:taboption("base", Value, "test_value1", "文本框1")
  4. test1:depends('test_enable', 1)

  5. test2 = s:taboption("base", Value, "test_value2", "文本框2")
  6. test2:depends('test_enable', 1)

  7. test.validate=function(self, value)
  8.         if value == '1' then
  9.                 test1.rmempty = false
  10.                 test2.rmempty = false
  11.         end
  12.         return value
  13. end
复制代码

点评

官方版luci有个retain属性可以不清空未满足依赖项的值,但lean配套的luci代码没有这个属性。  发表于 2022-7-9 13:52
非常感谢大神指点,谢谢~ 另外我想知道validate的原型函数是什么样的? 可是我在luci的文件夹目录grep好几天,都没找到函数的出处。 大神能否再指点一下;validate的函数实现原理;或函数出处文件呢 感  详情 回复 发表于 2019-5-20 10:14
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-20 10:14 | 显示全部楼层
zxc14236 发表于 2019-5-17 11:31
依靠depends隐藏,但是提交后被隐藏的所有值会被清空

非常感谢大神指点,谢谢~


另外我想知道validate的原型函数是什么样的?
可是我在luci的文件夹目录grep好几天,都没找到函数的出处。

大神能否再指点一下;validate的函数实现原理;或函数出处文件呢

感激不尽,谢谢!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-6-8 19:16

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表