0

我有一个 HTML5 表单,它调用 Perl 控制器将文件上传到服务器。有用。问题是,如果没有选择文件(如果表单框留空),并且用户单击按钮,他将收到一条令人讨厌的 Perl 错误消息(“需要文件在 ... 第 39 行等”)。我想添加一个功能,如果表单留空,则会出现一条消息,说“它是空的!”。这只能在视图中使用 HTML5 来完成吗?或者我需要修改我的 Perl 脚本?

我的 HTML5 看起来像:

<form action="[% uri_for('/upload/execution') %]" method="post" enctype="multipart/form-data" class="form-horizontal">
<filedset>
<div class="control-group">
<p>
<div class="controls">
<input readonly value="[% article.article_id %]" name="article_id" type="hidden" class="span1" id="game_id">
</div>
</p>
<p>
<div class="form-actions">
<input type="submit" value="upload" class="btn btn-primary">
</div>
</p>
</filedset>
</form>
4

1 回答 1

2

您可以使用 javascript 来验证您的请求。

看到这个问题,有一个很好的代码示例。

当然,这只是客户端验证(即在浏览器中完成),因此任何人都可以将其关闭并发送文件(尽管这种情况很少发生)。在脚本级别处理此问题也是一个好习惯。

于 2013-08-07T06:28:07.837 回答