任何人都可以建议我一个JavaScript函数来设置文本框只读按提交按钮。所以内容不能修改。将文本框设置为只读在提交
回答
要禁用input
你要设置其属性disabled
。如果你可以使用jQuery事遂所愿,这将是你在找什么:
$('#idOfYourInput').attr('disabled', true);
如果jQuery是不是一种选择,那么你将要使用的setAttribute
功能。看看the MDN documentation for it。事情是这样的:
var d = document.getElementById('idOfYourInput');
d.setAttribute('disabled', 'true');
(这两个代码示例假设您确定您的input
其id
属性如果不是的话,这将需要改变jQuery的一个将是微不足道的变化。 ,你只需要更新你的选择器来识别目标属性,后面的代码示例需要使用一些其他的DOM导航/选择功能来找到你的input
元素。)
你想包括这个您提交按钮的处理程序。然而,了解这只会影响页面的当前上下文。所以我假设你的提交按钮被用来通过AJAX执行提交,而不是实际POST整个页面,对吗?因为如果你在发布整个页面,那么当页面刷新时,你将会处于一个全新的页面上下文中。 (这意味着有一个按钮单击事件相关联的任何代码都没有运行过。)
这种情况是我填写了一个表格,然后当它被提交时,我留下了它的表单,但禁用了输入字段,因此无法更改。因此用户可以继续查看他们提交的内容。 – user1403763
@ user1403763:如果你渲染一个全新的页面,如果用户不应该编辑它们,为什么要将它作为表单元素呈现?表单元素用于编辑数据。如果用户只能看到数据,那么不用表单就可以显示给他们。如果这是用户体验的要求,您可以将它设计为与表单非常相似。但是把数据放在不可编辑的东西里,比如'span'标签。 – David
猜我的解释是不正确的。我有一个财政年度表。有一定的文本字段供用户输入(即目标详细信息)。用户被给予登录。当用户登录时,他可以输入数据(不全部都是)。用户输入的任何细节都将保存在提交按钮上。当用户登录时,应该禁用已填充的文本框,以便用户可以继续在其他字段中输入详细信息。 – user1403763
- 1. 将文本框设置为只读不能在Javascript中工作
- 2. 使用Html.TextBoxFor时,可以将文本框设置为只读吗?
- 3. xslt:将只读属性设置为文本框
- 4. 如何禁用只读文本框上的提交行为?
- 5. 将asptextbox设置为只读
- 6. 为所有文本框设置只读C#ASP.NET
- 7. 设置文本框为只读和背景颜色以jQuery的
- 8. 只能将网页设置为只读?
- 9. 在Flash中将TextArea设置为只读?
- 10. 将文本框设置为文件名
- 11. 只读文本框
- 12. 文本框只读
- 13. 只读文本框
- 14. 无法在文本输入框上设置'只读'
- 15. 使用AJAX提交表单并将输入字段设置为只读
- 16. 如何在提交之前设置文本框的默认值
- 17. 如何在表单提交后设置文本框的值?
- 18. 单击提交按钮后,使文本框的属性更改为只读
- 19. 将评分值设置为文本框
- 20. 将文本框设置为必填
- 21. 将焦点设置为文本框
- 22. 将最小值设置为文本框
- 23. 使只读工具只读文本框
- 24. QtableView将整行设置为只读
- 25. SQL Server 2005 - 将列设置为只读
- 26. 需要将参数设置为只读,
- 27. 如何将FCKEditor设置为只读?
- 28. QTableView - 将第一列设置为“只读”
- 29. AutoFixture.AutoMoq:将值设置为只读属性
- 30. 将所有QLineEdits设置为只读
只是对“不能修改”的声明...... _Anything_客户端澄清可以修改。精明的用户仍然可以启用文本框,在其中输入值,甚至可以手动将该值包含在POST中的服务器上。如果您的意图是使用JavaScript进行安全性,请重新评估您的方法。客户端表单操作是为了用户体验,安全性需要_server-side_ validation。 – David