【问题标题】:HTML reset button not working properlyHTML 重置按钮无法正常工作
【发布时间】:2013-11-20 11:43:36
【问题描述】:

我有一个基本的求和示例,其中包含一些 PHPHTML,在此 PHP 页面内,重置按钮仅重置前两个输入字段,而不是重置第三个答案字段。我不知道这是什么错误,因为我是 PHP 的新手。有人请帮我解决这个问题。

代码

<html>
<head>
<title>Title goes here</title>
</head>
<body>

<form action="" method="post">
<label>Enter Num1:</label>
<input type="text" name="num1" id="num1" /><br>
<label>Enter Num2:</label>
<input type="text" name="num2" id="num2" /><br><br>

<input type="radio" name="rad" value="add"/>addition
<input type="radio" name="rad" value="sub"/>sub

<input  type="submit" name="btn_submit" value="fire">

<?php
    if(isset($_POST['btn_submit']))
    {
        $num1 = $_POST['num1'];
        $num2 = $_POST['num2'];
        $rad_val = $_POST['rad'];
        if($rad_val=="add"){
        $total =  $num1+$num2;      
        }
        else if($rad_val=="sub"){
        $total =  $num1-$num2;
        }     
        echo "<SCRIPT TYPE=\"text/javascript\">

document.getElementById(\"num1\").value= $num1;
document.getElementById(\"num2\").value= $num2;
</SCRIPT>";
        echo "<label>Answer is:</label> <input type=\"text\" name=\"rad\" value = $total />";
        echo"<input  type=\"reset\" name=\"reset\" value=\"reset\" />";

    }
    else if(isset($_POST['reset'])){
    echo "<script>window.location = 'your_page.php';</script>";
    }
?>


</form>


</body>
</html>

【问题讨论】:

  • 我想你误解了type=reset Example how it works 这不是一个帖子,但它重置了输入值。如果你想刷新页面,为什么不直接&lt;a href="your_page.php"&gt;Reset&lt;/a&gt;

标签: php html forms http-post


【解决方案1】:

重置函数加载your_page.php。因此,可能需要将该页面上的初始值更改为 0。您能否举一个 your_page.php 的示例?

可以通过换行来触发页面刷新

echo"<input  type=\"reset\" name=\"reset\" value=\"reset\" />";

echo"<input  type=\"reset\" name=\"reset\" value=\"reset\" onclick= \"window.location = 'your_page.php';\"/>";

更好。只需将答案中的值重置为 0,这将在页面重新加载时保存。

在结果字段中添加一个 ID:

<input type=\"text\" name=\"rad\" id=\"rad\" value = $total />";

并在重置点击时更改 te 值/

echo"<input  type=\"reset\" name=\"reset\" value=\"reset\" onclick= \" document.getElementById(\"rad\").value= 0;\"/>";

【讨论】:

  • 它是我使用该行重新加载同一页面的当前页面,但它没有检查else if(isset($_POST['reset'])) 条件
  • 先好了。当您执行重定向时,如 echo "";表格未张贴。因此页面只是重新加载。 isset($_POST['reset']) 因此永远不会是真的。我将更新我的答案以显示正确使用重置按钮。
【解决方案2】:

使用 Jquery,您可以重置为任何值,但您可以阻止默认操作:

例子:

$('#Reset').click(function(){
    event.preventDefault();
    $('#element').val('default');
    $('#element2').val('default');
    $('#element3').val('default');      
});

【讨论】:

    猜你喜欢
    • 2018-02-07
    • 1970-01-01
    • 1970-01-01
    • 2015-01-31
    • 1970-01-01
    • 1970-01-01
    • 2013-11-11
    • 2017-03-15
    • 1970-01-01
    相关资源
    最近更新 更多