Javascript 清除文本框脚本不工作

Javascript 清除文本框脚本不工作,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我有这个表单和这个脚本,但是脚本不起作用。我一个月前就用过了,但现在不行了 <form method="post"> <input type="hidden" name="depName" value="<?php echo $_GET['var'];?>"> <input type="hidden" name="personStat" value="Espera"> <div class="input1">F

我有这个
表单
和这个
脚本
,但是
脚本
不起作用。我一个月前就用过了,但现在不行了

<form method="post">
    <input type="hidden" name="depName" value="<?php echo $_GET['var'];?>">
    <input type="hidden" name="personStat" value="Espera">

    <div class="input1">FirstName :<input type="text" name="fname" class="in1" value="<?php echo $nombre;?>"> <span class="error1">* <?php echo $nombreErr;?></span> </div>

    <div class="input2">LastName :<input type="text" name="lname" class="in2" value="<?php echo $apellido;?>"> <span class="error2">* <?php echo $apellidoErr;?></span> </div>

    <div class="input3">2LastName :<input type="text" name="Slname" class="in3" value="<?php echo $segundoAppellido; ?>"> <span class="error1"><?php echo $segundoAppellidoErr; ?></span> </div>

    <div class="input4">Student Id :<input type="text" name="studentId" class="in4" value="<?php echo $idEstudiante;?>"> <span class="error2"><?php echo $idEstudianteErr; ?></span> </div>

    <input class="buttonClr" type="button" value="Clear">
</form>


我猜您已经将jquery更新到1.7版或更高版本,因此
live()
不再有效。这是我的解释

从jQuery1.7开始,不推荐使用.live()方法。使用.on()附加事件处理程序。较旧版本的jQuery用户应优先使用.delegate(),而不是.live()

按如下所示更改脚本

<script> //Funtion that works on buttonClr click
    $(".buttonClr").on('click',function(){ 
         $(this).parents('form').find('input[type="text"]').val(''); //Clear all textboxes
         $('Select').val(''); //Clear the multiple select
    });
</script>
//在按钮上工作的功能单击
$(“.buttoncr”)。在('click',function(){
$(this).parents('form').find('input[type=“text”]”).val(“”);//清除所有文本框
$('Select').val(“”);//清除多选
});

工作演示:

我建议您使用重置按钮而不是
JS
。例如:

<form method="post">
    <input type="hidden" name="depName" value="<?php echo $_GET['var'];?>">
    <input type="hidden" name="personStat" value="Espera">
    <div class="input1">FirstName :<input type="text" name="fname" class="in1" value="<?php echo $nombre;?>"> <span class="error1">* <?php echo $nombreErr;?></span> </div>
    <div class="input2">LastName :<input type="text" name="lname" class="in2" value="<?php echo $apellido;?>"> <span class="error2">* <?php echo $apellidoErr;?></span> </div>
    <div class="input3">2LastName :<input type="text" name="Slname" class="in3" value="<?php echo $segundoAppellido; ?>"> <span class="error1"><?php echo $segundoAppellidoErr; ?></span> </div>
    <div class="input4">Student Id :<input type="text" name="studentId" class="in4" value="<?php echo $idEstudiante;?>"> <span class="error2"><?php echo $idEstudianteErr; ?></span> </div>
    <input class="buttonClr" type="reset" value="Clear">
                            <!---^^^^^^^-->
</form>


请尝试此脚本,以清除输入字段:

 $(".buttonClr").bind('click',function(){ 
      $(this).parents('form').find('input[type="text"]').val(''); //Clear all textboxes
      $('Select').val(''); //Clear the multiple select
 });

如果只想重置所有表单字段,只需添加重置按钮。这是一次点击重置按钮的最简单方法

<input type="reset" value="Reset"/>


哪里有
.buttonbr
按钮?使用
.on()
代替
.live()
为什么需要脚本?你试过
吗是的
也很神奇。抱歉,第一次使用html/PHPA时,只要您的PHP变量都设置为空字符串,那么重置将清除字段。但是,如果这些PHP变量中的任何一个被设置为任何其他字符串值,单击“重置”将简单地恢复这些默认值。
<input type="reset" value="Reset"/>