javascript - 想要通过 JavaScript 设置输入字段的默认值

标签 javascript jquery html

我正在制作一个表单,并将输入字段设置为仅使用 JavaScript 进行读取。我更改了只读属性的默认颜色。我想在字段为只读时显示默认值,即“NIL”

HTML

<input type="radio" name="sex" value="male">Male<br/>
<input type="radio" name="sex" value="female">Female <br/>
Age:<input type="text" name="age" id="age" size="20">
Hobbies:<input type="text" name="hobbies" id="hobbies" size="20"><br/>
Phone:<input type="text" name="phone" id="phone" size="20"><br/>

JS

$("input[name='sex']").change(function() {
if($(this).val() == "female") {
    $("#age,#phone").attr("disabled", true).css("background-color","#0F0");
} else if($(this).val() == "male") {
    $("#age,#phone").attr("disabled", false).css("background-color","#FFF");;
}
});

如果该字段是只读的,我想添加默认值“Nil”。请指导我如何将此属性添加到我的脚本中。

最佳答案

要为所有具有readonly属性的元素赋予值“Nil”,您可以使用[readonly] attribute selector像这样:

$('[readonly]').val('Nil');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" readonly />
<input type="text" />

<小时/>

在执行此操作之前,您可能需要首先确保元素的值为空。为此,您需要引入 filter()像这样:

$('[readonly]').filter(function() {
  return this.value == ""
}).val('Nil');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" readonly />
<input type="text" value="Has a value" readonly />
<input type="text" />

关于javascript - 想要通过 JavaScript 设置输入字段的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26400022/

相关文章:

javascript - Bootstrap 3 单选按钮正确的语法

html - 文本作为多级 CSS 导航中的列表项

javascript - Meteor:通过点击事件更改变量值

javascript - :target support 的 JS 测试

php - 使用 mysql 数据对分页表进行排序

jQuery .html() 在 ie7 中不显示任何数据,但 ie8 可以工作

javascript - 使用 javascript 检索 html 数据

html - 在 html/css 中,是否有一个跨度 "cut off"而不是继续到另一行(并在视觉上显示截断?)

javascript - 使用 Mailchimp API 3.0 获取并显示成员(member)状态(或错误)

javascript - 使用 Google 脚本在 Google Sheet GUI 中使用 <href> 标记