我正在使用html和javascript编写一个关于钛的程序,我有一个表单设置页面,设置我需要保存文本框中输入的数据的其他表单字段的值,并在下次启动时加载它们编程或重新加载页面,我该如何以简单的方式做到这一点?
<div id="formh">
<form id="form">
<select name="test" id="test">
<option id="op1" value="1">1234</option>
<option id="op2" value="2">2134</option>
</select>
</form>
</div>
<div id="st">
<form name="settings">
Op1 Value<input type="text" value="" id="inputOpt1" />
Op2 Value<input type="text" value="" id="inputOpt2" />
</form>
</div>
答案 0 :(得分:1)
在表单的onSubmit事件上(如果您不想要提交按钮,则输入onChange),您可以使用Titanium.Database或Titanium.App.Properties保存设置 - 我认为后者将是在这种情况下更合适。这里将是jQuery中的一个例子(为简单起见,尽管你可以不用):
$("form[name='settings']").submit(function(){
var val1 = $('input#inputOpt1').val();
Titanium.App.Properties.setString("opt1", val1);
var val2 = $('input#inputOpt2').val();
Titanium.App.Properties.setString("opt2", val2);
});
然后,基本上反过来另一种形式从Titanium检索属性并设置输入字段值。
<强>更新强>
完整的例子(再次,不确定我完全理解所需的互动):
$(document).ready(function(){
$("form[name='settings'] input").change(function(){
// these will happen on every change to the input values
var val1 = $('input#inputOpt1').val();
Titanium.App.Properties.setString("opt1", val1);
var val2 = $('input#inputOpt2').val();
Titanium.App.Properties.setString("opt2", val2);
});
// these will only happen right after the page loads
var setting1 = Titanium.App.Properties.getString("opt1");
$("form#form op1").val(setting1);
var setting2 = Titanium.App.Properties.getString("opt2");
$("form#form op2").val(setting2);
});