Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript代码不断失败_Javascript_Html - Fatal编程技术网

JavaScript代码不断失败

JavaScript代码不断失败,javascript,html,Javascript,Html,我已经隐藏了一个div标记,我正在使用JavaScript使该div标记在表单提交时出现在屏幕上,问题是div标记出现了,但很快就消失了,我不知道发生了什么,我需要它停止消失,一旦表单提交,div标记应该在页面上保持可见,div标记只包含一个带有一些文本的p标记,我试过点击按钮,但得到了相同的结果 <html> <body> <form onSubmit="validateRadio()"> <div style="displa

我已经隐藏了一个div标记,我正在使用JavaScript使该div标记在表单提交时出现在屏幕上,问题是div标记出现了,但很快就消失了,我不知道发生了什么,我需要它停止消失,一旦表单提交,div标记应该在页面上保持可见,div标记只包含一个带有一些文本的p标记,我试过点击按钮,但得到了相同的结果

<html>
<body>
        <form onSubmit="validateRadio()">

   <div  style="display: none" id="validationText"  >
        <p style="border: 1px solid black;">
        "This field is mandatory".
        </p>
    </div>

    <div>
<input type="submit">
    </div>
        </form>
    </body>

       <script type="text/javascript">
   function validateRadio(){
    validationText.style.display="block";
   }
  </script>
  </html>

“此字段为必填字段”。

函数validateRadio(){ validationText.style.display=“block”; }
您的页面可能正在刷新(如果未提供操作参数,则默认为当前URL),这会导致DIV“重新出现”。如果要阻止表单提交,请使用
onSubmit
,但请确保在方法中
返回false

function validateRadio(){
    validationText.style.display="block";

    // returning false will prevent the form submission
    return false;
}

您没有采取任何措施阻止表单实际提交。将函数更改为返回false:

function validateRadio() {
    validationText.style.display = "block";
    return false;
}
和您的处理程序到

是。。 提交表单时,将加载一个新页面(或重新加载同一页面)

如果您将看到您的validationText,则表示您没有提交页面,例如转换您的

     <form onSubmit="return validateRadio()">

当表单被提交时,页面被重新加载。我假设文本消失是因为表单被提交,页面被刷新。您是否在寻找一种方法,使“强制性”文本在提交后保持不变?“我不知道发生了什么”是这里的关键。不要慌乱。。。逻辑地逐步解决问题,答案就会出现。
 function validateRadio(){
    validationText.style.display="block";
    return false
 }