Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 清除模糊上的输入字段_Javascript_Jquery_Html - Fatal编程技术网

Javascript 清除模糊上的输入字段

Javascript 清除模糊上的输入字段,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试用blur上的new类清除所有输入,但由于某些原因,它无法工作。三个小时以来,我一直在这个问题上大发雷霆,我错过了哪一点?相关代码如下 更新2 我试着用相应的if块替换switch case块,它们给出了预期的结果。这消除了当前的问题,但我认为它不是对原始问题的可行答案,这就是为什么我的原始代码和switch case不起作用的原因 更新1 经过一些研究和实验,我发现我可以用new类清除所有输入,只要它们不在我的开关盒块内。我正在测试的选择器是$'.new',一旦进入switch ca

我正在尝试用blur上的new类清除所有输入,但由于某些原因,它无法工作。三个小时以来,我一直在这个问题上大发雷霆,我错过了哪一点?相关代码如下

更新2

我试着用相应的if块替换switch case块,它们给出了预期的结果。这消除了当前的问题,但我认为它不是对原始问题的可行答案,这就是为什么我的原始代码和switch case不起作用的原因

更新1

经过一些研究和实验,我发现我可以用new类清除所有输入,只要它们不在我的开关盒块内。我正在测试的选择器是$'.new',一旦进入switch case块,就不会产生明显的效果

@{
    ViewBag.Title = "Viser infrastruktur";
    Layout = "~/Views/Shared/_SuperOfficeLayout.cshtml";
}

<table class="table table-striped compact hover row-border">
    <thead>
        <tr>
            <th>Produsent</th>
            <th>Modell</th>
            <th>Serienummer</th>
            <th>Firmware</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>
                <div class="control-group">
                    <input type="text" class="col-md-12 form-control autosave new" name="manufacturer" placeholder="Produsent" value="" />
                    <input type="hidden" class="autosave new" name="id" value="" />
                    <input type="hidden" class="autosave new" name="superOfficeCustomerId" value="@Model.SuperOfficeCustomerId" />
                </div>
            </td>
            <td>
                <div class="control-group">
                    <input type="text" class="col-md-12 form-control autosave new" name="model" placeholder="Modell" />
                </div>
            </td>
            <td>
                <div class="control-group">
                    <input type="text" class="col-md-12 form-control autosave new" name="serialNumber" placeholder="Serienummer" />
                </div>
            </td>
            <td>
                <div class="control-group">
                    <input type="text" class="col-md-12 form-control autosave new" name="firmware" placeholder="Firmware" />
                </div>
            </td>
        </tr>
        @foreach (var infrastructure in Model.Infrastructures)
        {
            <tr>
                <td>
                    <div class="control-group">
                        <input type="text" class="col-md-12 form-control autosave" name="manufacturer" placeholder="Produsent" value="@infrastructure.Manufacturer" />
                        <input type="hidden" class="autosave" name="id" value="@infrastructure.Id" />
                        <input type="hidden" class="autosave" name="superOfficeCustomerId" value="@Model.SuperOfficeCustomerId" />
                    </div>
                </td>
                <td>
                    <div class="control-group">
                        <input type="text" class="col-md-12 form-control autosave" name="model" placeholder="Modell" value="@infrastructure.Model" />
                    </div>
                </td>
                <td>
                    <div class="control-group">
                        <input type="text" class="col-md-12 form-control autosave" name="serialNumber" placeholder="Serienummer" value="@infrastructure.SerialNumber" />
                    </div>
                </td>
                <td>
                    <div class="control-group">
                        <input type="text" class="col-md-12 form-control autosave" name="firmware" placeholder="Firmware" value="@infrastructure.Firmware" />
                </div>
            </td>
        </tr>
    }
</tbody>

像这样的方法应该会奏效:

$'input.new'。在'blur'上,函数{$this.val;$this.text;}

只要确保绑定事件时输入存在,否则可以执行以下操作:


$document.on'blur',input.new',函数{$this.val;$this.text;}

对于香草JavaScript,您可以使用

<input onBlur={(event) => { event.target.value = ''; }} />

这和我已经有的没什么不同。为什么要在val之后运行文本?val应该足够了,但在这种情况下似乎不够。根据输入类型,我还让一些浏览器清除了该值,但框中的文本没有立即更改。我明白了。嗯,我在val调用下添加了文本,仍然没有在浏览器中显示清除的文本,但是如果我尝试在调用val后控制台记录字段的值,它会将值显示为空。但不会显示在浏览器中。有什么想法吗?你能把这件事弄糟吗?然后我们可以试着调试它。另外,我会检查绑定的顺序,如果autosave上的另一个绑定正在捕获模糊,它可能永远不会触发另一个事件处理程序。
<input onBlur={(event) => { event.target.value = ''; }} />