如何在提交时清除 Selectize 值? [无法读取未定义的属性“清除”]

问题描述

我必须在提交后清除选择输入,但它给了我这个错误信息:

Cannot read property 'clear' of undefined

这是我目前所拥有的:

  1. GET $_POST 值,这没有什么问题。
   <?PHP
       $autoclear = "0";
       if (isset($_POST['autoClear']))$autoclear = $_POST['autoClear'];
   ?>
  1. 我的 HTML 表单,这也没什么问题。
<form method="post" action="">
<input type="checkBox" id="autoClear" name="autoClear" value="1" <?PHP if ($autoclear == '1') echo 'checked'; ?>>
  <select id="client" name="client" class="client selectize" >
    <option>
      ...
      ...
    </option>
  </select>
<!-- OTHER INPUTS,IRRELEVANT -->
<input type="submit" name="submitBtn" id="submitBtn" class="submitBtn btn-info" value="Submit">

</form>
  1. 这就是问题。似乎 HTML <select id="client" .... </select> 必须先加载才能调用 selectize .clear() 函数。但是,由于 PHP 在服务器端运行,所以它会打印出来,这可能是导致问题的原因吗?
<script>
   function clearSelectize(){

      // Clear Selectize [ERROR]
      $('#client')[0].selectize.clear();
   }

</script>

<?PHP 
      if ($autoclear == '1'){
         echo "<script>clearSelectize(); </script>";
      }
?>

最初所做的:只需重新加载页面

<script>window.location.href = 'page.PHP'; </script>

但这会clear ALL输入,所以我必须找到一种方法来清除仅选择输入

更新:解决方案#1

<script type="text/javascript">
     $(document).ready(function () {
         <?PHP
             if ($autoclear == '1'){
                 echo "$('.car.selectize')[0].selectize.clear();";
             }
         ?>
     }
</script>

这对我有用,谢谢。如果有人有更好的方法/解决方案,请告诉我。

非常感谢任何建议/建议!谢谢!

解决方法

由于您必须确保 selectize()初始化,因此使用 $('document').ready(function(){}); 即可完成这项工作。

里面可以放你的PHP条件,提交后生效:

<script type="text/javascript">
     $(document).ready(function () {
         <?php
             if ($autoclear == '1'){
                 echo "$('.car.selectize')[0].selectize.clear();";
             }
         ?>
     }
</script>
,

jquery 中没有这样的选择器

$(".classname.classname") // is wrong
// use space multi class 
$(".classname .classname") // is correct 
// your code is wrong 
 $('.client.selectize')[0].selectize.clear();

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...