问题标签 [readonly-attribute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
162 浏览

django - 如何使用 HTML 属性只读而不是禁用使 Django 表单字段只读

我想让我的字段在一个表单中是只读的。我已经在表单中使用了禁用,但是当表单触发 POST 请求时,它不会将我的数据发送到数据库。

因此,我检查了该元素并在其 HTML 代码中手动添加了 readonly 属性,以检查 readonly 是否正常工作。并且 readonly 在提交表单时没有问题。但是 disabled 告诉我我的表格无效。

根据这个答案,Readonly 和 Disabled 有一些区别: HTML 表单输入字段的 disabled="disabled" 和 readonly="readonly" 有什么区别?

如何在表单中使用只读而不是禁用?

0 投票
2 回答
57 浏览

android - 如何在房间中将列标记为不可更新

如何在房间中将字段标记为不可更新

在我的产品表中,我有条形码和单位 ID,我不希望在更新单位 ID 时更新条形码

字段看起来像这样,

0 投票
1 回答
2080 浏览

c# - C# - 不能在派生类构造函数中设置只读属性和字段

我有一个如下的类结构

这会引发编译错误

不能分配只读字段(在构造函数或变量初始化程序中除外)

无法将属性或索引器“AMyAbstractClass.MyReadonlyProperty”分配给 - 它是只读的

分别。

在第一种情况下,错误消息是错误的,因为它在构造函数中设置的!


我可以想出具有不可变对象属性的替代方法,但为什么不允许这种情况?这种封装有哪些好的做法?

0 投票
2 回答
2217 浏览

javascript - 如何通过 Python 使用 Selenium 将日期作为文本直接发送到具有只读属性的日历控件?

我正在尝试使用 python 和 selenium 从日历中选择一个日期,但我需要一些帮助,我在 VBA 中做到了这一点,但我想在 python 中做到这一点。提前致谢。

0 投票
1 回答
83 浏览

javascript - 使用 jquery val() 清除只读输入日期在 Firefox 上失败,在 Chrome 上成功。为什么?

我在 Firefox 和 Chrome 之间遇到了不同的行为JQuery.val('')

这是显示问题的jsfiddle。https://jsfiddle.net/mdqfbj/d4eovkg8/3/

一个单选按钮调用一个 JS 函数来清除一些字段,包括一些 <input type="date" >.

在 Chrome 中它可以正常工作,而在 Firefox 中,日期输入只有在它们不是时才会被清除readonly

由于 readonly 控制用户输入,因此我希望.val('')无论是否readonly存在都可以工作。

为什么不是这样?

0 投票
0 回答
28 浏览

c# - 没有私有集的只读属性;

我不应该定义private set;是否要A在 Foo 实例中设置属性。或者这是由 c# 隐式完成的?

0 投票
1 回答
63 浏览

emacs - Emacs 中有没有办法填充包含一些只读字符的段落?

在 Emacs 中,我使用带有降价缓冲区的 cm-mode 。cm-mode 插入一些只读字符以指示文档更改。当我发出fill-paragraph填充时,消息中止read-only Text

有没有办法填充包含几个只读字符的段落?(即填充后只读字符应该再次只读。)

0 投票
1 回答
209 浏览

typescript - 打字稿只读属性分配错误但仍在编译

我正在玩 typescript atm 并遇到了只读参数的问题。我设置了一个带有只读参数的接口,但仍然可以在编译前在初始化和导入的对象上修改它们。编译器抱怨它,但仍然编译代码。

这是我的例子:

配置.ts

现在我将它导入我的index.ts

IDE告诉我这config.port = 8080是不允许的,编译器也这么说:

但是服务器仍然在端口 8080 上启动。所以尽管编译器抛出了一个error它仍然编译代码。我希望error编译失败,因为这就是我想使用打字稿的原因,不是吗?

我错过了什么,做错了什么吗?

0 投票
2 回答
42 浏览

java - 限制或阻止方法实现

我有一个场景,我在代码的多个部分调用特定方法。现在我需要不实现此方法,或者不针对特定条件执行此代码中的行(例如 ON/OFF 开关)。我可以在调用该方法的任何地方添加 if...else 。但是有没有其他方法可以在 java 中做到这一点。也许在方法级别?

正如我所提到的,不想在我调用该方法的任何地方添加我的 if ..else 。在下面添加示例:

}

0 投票
1 回答
355 浏览

c# - 可以使用指针来修改只读字段吗?但为什么?

我来自 C++,发现 C++ 和 C# 中的指针之间的行为非常不同。

我惊讶地发现这段代码可以编译......甚至......工作得很好。

这让我很困惑,即使在 C++ 中我们也有保护const对象的机制(const在 C++ 中与 C# 中几乎相同readonly,而不是const在 C# 中),因为我们没有足够的理由通过指针任意修改 const 值。

进一步探索,我发现在 C# 中没有与 C++ 的低级 const 指针等效的东西,类似于:

在 C# 中,如果有的话。

那么 p 只能读取指向的对象,而不能写入。

对于const对象,C#禁止检索其地址的尝试。

在 C++ 中,任何修改的尝试const都是编译错误或未定义行为。在 C# 中,我不知道我们是否有可能利用它。

所以我的问题是:

  1. 这种行为真的定义明确吗?虽然我知道在 C# 中没有像 C++ 中的 UB 这样的概念
  2. 如果是这样,我应该如何使用它?或者从不使用它?

注意:在评论部分:C++中的cast awayconst与这个问题无关,因为它只有在指向的对象本身不是时才有效const,否则它是UB。另外,我基本上是在谈论 C# 和编译时行为。

如果您不完全理解该问题,可以要求我提供更多详细信息。我发现大多数人都无法正确理解这一点,也许是我的错没有说清楚。