1

我有一个事件处理程序列出了一个 jQuery-“提交”事件。

表格如下所示:

<form class="registration well">
    <fieldset>
        <legend>registration</legend>
        <div class="control-group">
            <label class="control-label" for="_user_username">username</label>
            <div class="controls">
                <input type="text" id="_user_username" name="username" placeholder="george78" />
            </div>
        </div>
        <div class="control-group">
            <label class="control-label" for="_user_email">email:</label>
            <div class="controls">
                <input type="email" id="_user_email" name="email" placeholder="george@example.com" />
            </div>
        </div>
        <div class="control-group">
            <label class="control-label" for="_user_password">password:</label>
            <div class="controls">
                <input type="text" id="_user_password" name="password" placeholder="my password" />
            </div>
        </div>
        <button type="submit" class="btn btn-primary">register</button>
    </fieldset>
</form>

事件处理部分如下:

e.preventDefault();

console.log(e);

var user = {
    username: $(e.target[1]).val()
    , email: $(e.target[2]).val()
    , password: $(e.target[3]).val()
 };

到目前为止,这有效。我现在只需要一种通用的有效方法来 foreach 这个过程。难点在于事件目标数组中的第一个元素是字段集,最后一个元素是按钮。所以我必须以某种方式获得之间的元素。

有人知道我怎么能做到这一点?

4

1 回答 1

-4

为什么不直接通过 id 获取它们:

var user = {
username: $('#_user_username').val()
//etc.
 };
于 2012-07-12T17:18:52.237 回答