首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >父字段集中的清除文本框

父字段集中的清除文本框
EN

Stack Overflow用户
提问于 2014-07-09 20:17:30
回答 2查看 274关注 0票数 0

我正在使用这个“奇幻滑翔机”插件,它的工作原理是将许多字段集并排设置。由于每个字段集都是同一个类的成员,所以我试图找到最简单的方法为每个表单添加一个清除按钮,并使用jQuery单独清除该特定表单中的输入字段。

我尝试使用.parent().parents().closest()来隔离用户正在处理的字段集,而没有结果。虽然我可以清除我正在处理的表单,但我最终清除了应用程序中每个字段集中的表单。我们经常使用jQuery,所以我对此还比较陌生。有什么想法吗?

jQuery

代码语言:javascript
运行
复制
    $('#clearButton').click(function() {
        $(this).closest('fieldset').find('input:text').val('');
        $('#Pensgc').attr('readonly', false);
    });

样品Razor

代码语言:javascript
运行
复制
<fieldset class="step">
    <legend>Display Exceptions</legend>
    <center>
        <table id="ExceptionEditing">
            <thead>
                <tr>
                    <th>Exception Name</th>
                    <th>Starting Letter</th>
                    <th></th>
                    <th></th>
                </tr>
            </thead>
            <tbody>
                @for (int i = 0; i < Model.ExceptionList.Count(); i++)
                {
                    <tr id="@Model.ExceptionList[i].Id">
                        <td>
                            @Html.TextBoxFor(anything => Model.ExceptionList[i].ExceptionName, new {style = "width:300px;", @readonly = "readonly", maxlength=255 })
                        </td>
                        <td style="padding-left:30px;" class="EditStartingLetter">
                            @Html.TextBoxFor(anything => Model.ExceptionList[i].StartingLetter, new {style = "width:10px;", @readonly = "readonly", maxlength=1 })
                        </td>
                        <td style="padding-left:10px;">
                            <a href="#" class="editException">Edit</a>
                        </td>
                        <td style="padding-left:10px;">
                            <a href="#" class="deleteException">Delete</a>
                        </td>
                    </tr>
                }
            </tbody>
        </table>
    </center>
</fieldset>
<fieldset class="step">
    <center>
        <legend>Create Exception</legend>
        <table>
            <tr>
                <td>
                    <div class="editor-label">
                        @Html.LabelFor(model => model.createExceptionName)
                    </div>
                    <div class="editor-field">
                        @Html.TextBoxFor(model => model.createExceptionName, new { @class="AlphaNumOnly", maxlength=255 })
                    </div>
                </td>
                <td>
                    <div class="editor-label">
                        @Html.LabelFor(model => model.createExceptionLetter)
                    </div>
                    <div class="editor-field">
                        @Html.TextBoxFor(model => model.createExceptionLetter, new { @class="AlphaNumOnly", maxlength=1 })
                    </div>
                </td>
            </tr>
        </table>
        <button type="submit" class="submitButton">Submit</button>
        <button type="submit" class="clearButton">Clear</button>
    </center>
</fieldset>

编辑

这是一个有用的小提琴:http://jsfiddle.net/rZa2j/

EN

回答 2

Stack Overflow用户

发布于 2014-07-09 20:34:40

在阅读了文档之后,我在他们的JavaScript中找到了下面的一行:

代码语言:javascript
运行
复制
current = $this.parent().index() + 1;

使用$this引用单击的。这意味着:如果打开第二个选项卡,当前将为1。

代码语言:javascript
运行
复制
var fieldsetCount = $('#formElem').children().length;

这就是他们检索幻灯片数量的方式。通过将所有内容组合在一起,您可以使用以下代码获得当前字段集:

代码语言:javascript
运行
复制
var currentFieldsetIndex = $(".selected").index();
var $currentFieldset = $("#formElem").children().eq(currentFieldsetIndex);

然后,您可以用

代码语言:javascript
运行
复制
$currentFieldset.find("input:text").val("");
票数 1
EN

Stack Overflow用户

发布于 2014-07-09 20:30:23

刚刚意识到我会将type属性设置为reset。以前从未使用过这种方法,但是移除它解决了问题。

代码语言:javascript
运行
复制
<button class="clearButton">Clear</button>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24663087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档