English 中文(简体)
至少完成了1份档案材料,与j Query完成。
原标题:Validate at least 1 file input is completed with jQuery

我如何能够确保至少有一个领域拥有使用 j子的选定档案? 这里我采取的形式是:

<form action="b.php">
    <input type="file" name="file[]">
    <input type="file" name="file[]">
    <input type="file" name="file[]">
    <input type="file" name="file[]">
    <input type="submit" value="Value">
</form>
最佳回答

为此,您可使用<条码>地图(<>>>>>,以建立一系列所有有效文档:<条码>/代码>要素。 然后,你可以检查这一阵列中是否有任何内容。 如果是的话,那么至少一种投入是有效的,如果是空洞的话,那么就没有选择。 为此:

var validFields = $( input[type="file"] ).map(function() {
    if ($(this).val() != "") {
        return $(this);
    }
}).get();    

if (validFields.length) {
    console.log("Form is valid");
} else {
    console.log("Form is not valid");
}

<>>Example fiddle

问题回答

您可使用j Query s .val(>)方法,检查价值是否已经确定,但我不知道该工程是否用于档案输入类型。

然而,你应当使用服务器方语言验证你的档案,因为如果你重新使用javascript,浏览该页的人只会使验证无效。 Just loop through the file[] range andeck if it s food or not.

这一点非常安全,而且实际上也更容易。

虽然你当然需要服务器方面的验证,但是如果有人在你的输入要素中添加一个档案,则有一些冰trick。

现在,由于安全原因,你获取档案材料的机会受到严重限制,因此,你可以改变。 但是,你可以检查如下:

if($( input[type="file"] ).val() != "") {
    alert("a file is selected")
}




相关问题
CSS working only in Firefox

I am trying to create a search text-field like on the Apple website. The HTML looks like this: <div class="frm-search"> <div> <input class="btn" type="image" src="http://www....

image changed but appears the same in browser

I m writing a php script to crop an image. The script overwrites the old image with the new one, but when I reload the page (which is supposed to pickup the new image) I still see the old one. ...

Firefox background image horizontal centering oddity

I am building some basic HTML code for a CMS. One of the page-related options in the CMS is "background image" and "stretch page width / height to background image width / height." so that with large ...

Separator line in ASP.NET

I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!

热门标签