【发布时间】:2026-02-18 10:55:02
【问题描述】:
我正在使用 LiveValidation 进行客户端表单验证。 http://livevalidation.com/examples
我还有一个应用了 Select2 的多选表单字段。
问题是,如果我将该 Select2 字段留空(不选择任何内容),那么我的表单将在按下提交按钮后自行提交,而不验证任何其他表单字段。
但如果我确实在 Select2 字段中选择了某些内容并尝试提交表单,那么 LiveValidation 将尝试验证其他字段(包括 Select2 field),如果验证失败 - 表单不会提交并提示用户先修复错误。
更新:即使我从多选表单字段中删除 Select2,LiveValidation 仍会在它为空/未选择任何内容时跳过验证。
应用了 Select2 的选择字段(我使用 PHP 函数 getSelectOptions 使用表中单个列中的行值填充选择的选项):
<form id="myform" name="myform" method="post" action="myscript.php">
...
<select id="myselect" name="myselect[]" multiple="multiple">
<?php getSelectOptions("table_name", "column_name"); ?>
</select>
...
</form>
以下是我如何将 Select2 应用于文件前面的选择字段:
$(function()
{
...
$('#myselect').select2({ placeholder: "Select items" });
...
});
在这里,我将 LiveValidation 应用于 Select2 之后的选择字段(通过添加 Validate.Presence 我告诉它选择字段不能为空/必须有值):
$(function()
{
...
var myselect = new LiveValidation("myselect", { onlyOnSubmit: true });
myselect.add(Validate.Presence);
...
});
【问题讨论】:
标签: javascript jquery html validation jquery-select2