w2ui 忽略 html 形式的值

w2ui ignoring value in html form

w2ui 忽略了输入标签上的值。

如何让它使用该值?

它可以很好地读取选择。

jsfiddle.net

<div id="form" style="width: 750px;">
<div class="w2ui-page page-0">
  <div class="w2ui-field">
    <label>First Name:</label>
    <div>
      <input name="first_name" type="text" value="John" />
    </div>
  </div>
</div>
<div class="w2ui-buttons">
  <button class="w2ui-btn" name="reset">Reset</button>
  <button class="w2ui-btn" name="save">Save</button>
</div>
</div>

$(function() {
$('#form').w2form({
  name: 'form',
  url: 'server/post',
  fields: [
    { field: 'first_name', type: 'text', required: true }
  ],
  actions: {
    reset: function() {
      this.clear();
    },
    save: function() {
      this.save();
    }
  }
});
});

如果我非要写JavaScript。我将如何访问这些字段?

您可以使用 form.record 访问输入值。

在您的情况下 w2ui.form.record.first_name(其中 form 是您的 w2form 的名称)。

在您的保存事件中,您可以使用 this.record 访问记录,例如:

    save: function() {
        console.log(this.record);
        console.log(this.record.first_name);
        this.save();
    }

此外,作为 w2ui 的文档,您可以设置输入字段的值

w2ui.Your_Form_Name.record['You_InputField_Name'] = The_New_value;

然后调用表单刷新来更新 html 和对象,但是这会清除以前的下拉列表 select ,所以请使用以下代码设置新值避免使用刷新并在下拉列表

中保留前 select

$('#InputFiled_Name').val(The_New_Value); w2ui.Your_Form_name.record['Your_InputField_Name'] = The_New_Value;