在 Titanium 应用程序中保存表单字段的数据

发布于 2024-10-20 17:59:09 字数 738 浏览 0 评论 0原文

我正在使用 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>

http://jsfiddle.net/hSyY3/

I am writing a program on titanium using html and javascript, and I have a form settings page that sets the values for other form fields I need to save the data entered in the text boxes and load them the next time the start the program or reload the page, how would I do this in a simple way?

<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>

http://jsfiddle.net/hSyY3/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

百思不得你姐 2024-10-27 17:59:09

在表单的 onSubmit 事件(如果您不需要提交按钮,则为输入的 onChange),您可以使用 Titanium.DatabaseTitanium.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);
});

On the form's onSubmit event (or onChange for the inputs if you don't want a submit button), you can save the settings using the Titanium.Database or Titanium.App.Properties - I think the latter would be more appropriate in this case. Here would be an example in jQuery (for simplicity, though you could do it without):

$("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);
});

Then, basically do the opposite for the other form to retrieve the Properties from Titanium and set the input field values.

UPDATE

The full example (again, not sure that I completely understand the desired interaction):

$(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);
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文