javascript - 按钮未在表单内禁用

标签 javascript html forms

向开发者问好。我正在为大学做一个与 Javascript 相关的项目。我创建了一个页面,其中有“添加”按钮和“取消好友”按钮,该按钮已禁用。一旦用户单击“添加”按钮,就会出现提示框,在单击“确定”提示后,“取消好友”按钮将能够单击,而“添加”按钮将变为禁用。如果点击取消好友,添加按钮就可以点击。我不知道如何解释。可能看了我的问题可会头疼。对此感到抱歉。我的问题是按钮无法禁用,如果我从未将其放入表单中,它就可以工作,但因为我放入表单中就不起作用。各位有什么解决办法请帮帮我

 function myFunction(add){
    	var subject = prompt("Please enter Subject that want to study");
    	if (subject != null){
    		document.getElementById("subject").value = subject;
    		
    	document.getElementById("btn").disabled=false;
    	document.getElementById("add").disabled=true;
    	document.getElementById("add").value="request sent";
    	
    	}
    }
    function disableButton(btn){
    	 
    		  
    		document.getElementById("add").disabled=false;
    		document.getElementById("btn").disabled=true;
    	document.getElementById("add").value="Add friend";
    	form.submit();
    }
<form method="post" id="form" enctype="multipart/form-data" autocomplete="off"  > 
    <input type="submit" value="unfriend" id="btn" onClick="disableButton(btn)" disabled/>  
    <input type="hidden" id="subject" name="subject"/>
    <input type="submit" value="add" id="add"  onclick="myFunction(add)"  /></form>

最佳答案

“添加”和“取消好友”按钮都提交一个 POST 请求,该请求会刷新页面,因为没有指定表单操作。也许您需要阅读 HTTP 方法。 https://www.w3schools.com/tags/ref_httpmethods.asp是一个很好的资源。

如果您计划稍后添加服务器端页面来处理请求,您可以临时将以下内容添加到表单标记onsubmit="return false"

如果您只想使用表单输入而不提交表单,您应该从disableButton函数中删除form.submit(),并从type更改添加和取消好友按钮的类型="提交"type="button"。您还可以删除表单的方法和enctype。

关于javascript - 按钮未在表单内禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51683659/

相关文章:

c# - 如何获取窗体的内部宽度和高度

javascript - 获取提交按钮值 onsubmit 事件

javascript - 响应 200 OK 但 Jquery 显示错误?

php - zend 文本元素中的占位符文本

javascript - 使用 HTML、CSS 和 JavaScript 的多平台桌面应用程序框架

html - CSS3 动画适用于除 Chrome 之外的所有浏览器

javascript - 保护 JS 客户端 SDK

javascript - 无论缩放如何获取浏览器窗口位置

javascript - 检测到输入框中的第一个字符后显示 'Clear Text' 按钮

javascript - 如果验证不正确,则在提交期间停止表单