javascript - 提交表单时如何检查可放置区域是否为空

标签 javascript php jquery html forms

我有带有可放置区域的表单:

<form>
    <span id="error">
    <!----Initializing Session for errors--->
        <?php
            if (!empty($_SESSION['error1'])) {
                echo $_SESSION['error1'];
                unset($_SESSION['error1']);
            }
        ?>
    </span> 
    <div class="projLeader">
    <ol>
        <li class="placeholder" name="projLeader" <?php if (isset($projLeader)) echo 'value="'.$projLeader.'"' ?>><div class="adding">Drop here</div></li>
        <input type="hidden" name="projLeader" class="hiddenListInput1" required/>
    </ol>
    <input type = "submit" name ="submit" class="button" value = "Create Report" onclick="userSubmitted = true;"/>
    </div>    
</form>

一旦元素被放下,占位符“Drop here”将被删除。我正在通过这个 js 函数保存删除的数据:

var LISTOBJ1 = {
  saveList: function() {
    var listCSV = "";
    $( ".projLeader li" ).each(function() {
      if (listCSV === "") {
        listCSV = $(this).text();
      } else {
        listCSV += "," + $(this).text();
      }
      $(".hiddenListInput1").val(listCSV);
    });
  }
}

所以我的问题是如何进行验证并且不允许用户提交空字段或带有“拖放到此处”占位符的字段,因为如果用户不添加任何内容并只按提交,我就会得到要打印的占位符。 我尝试通过发布数据并检查它是否为空来检查它是否为空:

$projLeader=$_POST['procLeader'];
if (empty($projLeader))
{
  //setting error message
  $_SESSION['error1'] = "Mandatory field(s) are missing, Please fill it again";
  header("location: createProject2.php"); //redirecting to first page           
}

那么如何进行验证呢?谢谢

最佳答案

可转换区域中没有转换项目时,您的隐藏字段将具有“转换此处”值。因此,您的条件应检查隐藏字段是否有无值或隐藏字段是否具有“Drop here”值,并且应考虑空白.

注意:您的咒语在获取隐藏字段值时也是错误的。它必须是 projLeader 而不是 procLeader

请尝试使用以下修改后的 PHP 代码。

$projLeader=trim($_POST['projLeader']);
if (empty($projLeader) || $projLeader == "Drop here")
{
    //setting error message
    $_SESSION['error1'] = "Mandatory field(s) are missing, Please fill it again";
    header("location: createProject2.php"); //redirecting to first page         
}

并且必须在两个页面上放置 sesstion_start(); 函数才能使用 $_SESSION

关于javascript - 提交表单时如何检查可放置区域是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40230834/

相关文章:

javascript - kendo treeview 复选框 - 父节点检查 - 每个复选框上的更改事件

javascript - 自动回复电子邮件 Google 联系表单

php - LIKE 语句在 PDO 中无法正常工作

javascript - 仅当列表中添加了 ajax 请求时才调用 ajax 请求

javascript - Mysql在nodejs中插入空日期时间

javascript - 在我的 Javascript 单元测试中,expect(true).toBeTruthy() 失败

php - 错误显示 "Could not connect to the target "

php - 防止直接访问 php 包含文件

jQuery 更改所有子项的 id 属性

javascript - 从 Github pull json 数据时出现 TypeError