我想在web界面添加一个功能,显示可用wifi列表,同时在wifi名称后面的输入框中输入密码,点击保存按钮则将帐号密码保存到/usr/wifisave文件中。界面如图所示。
保存在/model/cbi下的代码如下所示:
m=Map(“wifikey”,translate(“Good Friend ECG Recorder”),nil)
luci.sys.call(“wifilist start”)
local inits={}
f1=io.lines("/usr/wifinote2","*l")
f2=io.lines("/usr/wifinote1","*n")
f3=io.lines("/usr/wifinote3","*l")
for line in io.lines("/usr/wifinote") do
inits[line]={}
inits[line].intensity=f2()
inits[line].name=f1()
inits[line].key=f3()
end
form=SimpleForm(“wifilist”,translate(“Available network”),nil)
tb=form:section(Table,inits)
–it=tb:option(DummyValue,“intensity”,translate(“Intensity(%)”))
na=tb:option(DummyValue,“name”,translate(“SSID”))
en=tb:option(Value,“key”,translate(“Key”))
en.render=function(self,section,value)
– self.rmempty=true
self.default=nil
Value.render(self,section,value)
end
en.write=function(self,section,value)
if value~=nil then
luci.sys.call(“setLED start”)
local file=io.open("/usr/wifisave",“a”)
file:write(inits[section].name)
file:write(" “)
file:write(value)
file:write(”\n")
file:close()
end
– ts:option(DummyValue,“adblock”,translate(“Changes have been saved. Please Reflash the page.”))
end
ts=form:section(SimpleSection)
sa=ts:option(Button,“save”)
sa.inputtitle=translate(“Save”)
sa.inputsytle=“apply”
sa.write=function(self)
luci.sys.call(“duplicate start”)
end
return m,form
目前存在的问题是,,输入密码点击保存之后,有时还能够将帐号密码保存,有时候没有保存,也就是en.write下面的代码有时候能触发,有时候触发不了。各位如果能有解决方法的麻烦告知一下,谢谢。