radio object

radio object

A set of radio buttons on an htm form. A set of radio buttons lets the user choose one item from a list.

语法

To define a set of radio buttons, use standard htm 语法 with the addition of the onClick event handler:

<INPUT
   TYPE="radio"
   NAME="radioName"
   VALUE="buttonValue"
   [CHECKED]
   [onClick="handlerText"]>
   textToDisplay
NAME="radioName" specifies the name of the radio object. All radio buttons in a group have the same NAME attribute. You can access this value using the name property. VALUE="buttonValue" specifies a value that is returned to the server when the radio button is selected and the form is submitted. This defaults to "on". You can access this value using the value property. CHECKED specifies that the radio button is selected. You can access this value using the defaultChecked property. textToDisplay specifies the label to display beside the radio button.

To use a radio button's properties and 用法:

1. radioName[index1].propertyName
2. radioName[index1].methodName(parameters)
3. formName.elements[index2].propertyName
4. formName.elements[index2].methodName(parameters)
radioName is the value of the NAME attribute of a radio object. index1 is an integer representing a radio button in a radio object. formName is either the value of the NAME attribute of a form object or an element in the forms array. index2 is an integer representing a radio button on a form. The elements array contains an entry for each radio button in a radio object. propertyName is one of the properties listed below. methodName is one of the 用法 listed below.

Property of

  • form

    描述

    A radio object on a form looks as follows:

    Properties

  • checked lets you programatically select a radio button
  • defaultChecked reflects the CHECKED attribute
  • length reflects the number of radio buttons in a radio object
  • name reflects the NAME attribute
  • value reflects the VALUE attribute

    用法

  • click

    Event handlers

  • onClick

    例子

    Example 1. The following example defines a radio button group to choose among three music catalogs. Each radio button is given the same name, NAME="musicChoice", forming a group of buttons for which only one choice can be selected. The example also defines a text field that defaults to what was chosen via the radio buttons but that allows the user to type a nonstandard catalog name as well. The onClick event handler sets the catalog name input field when the user clicks a radio button.

    <INPUT TYPE="text" NAME="catalog" SIZE="20">
    <INPUT TYPE="radio" NAME="musicChoice" VALUE="soul-and-r&b" onClick="musicForm.catalog.value = 'soul-and-r&b'"> Soul and R&B <INPUT TYPE="radio" NAME="musicChoice" VALUE="jazz" onClick="musicForm.catalog.value = 'jazz'"> Jazz
    <INPUT TYPE="radio" NAME="musicChoice" VALUE="classical" onClick="musicForm.catalog.value = 'classical'"> Classical
     
    Example 2. The following example contains a form with three text boxes and three radio buttons. The radio buttons let the user choose whether the text fields are converted to upper case or lower case, or not converted at all. Each text field has an onChange event handler that converts the field value depending on which radio button is checked. The radio buttons for upper case and lower case have onClick event handlers that convert all fields when the user clicks the radio button.
     
    <htm> <HEAD> <TITLE>Radio object example</TITLE> </HEAD> <SCRIPT> function convertField(field) {    if (document.form1.conversion[0].checked) {       field.value = field.value.toUpperCase()}    else {    if (document.form1.conversion[1].checked) {       field.value = field.value.toLowerCase()}    } } function convertAllFields(caseChange) {    if (caseChange=="upper") {    document.form1.lastName.value = document.form1.lastName.value.toUpperCase()    document.form1.firstName.value = document.form1.firstName.value.toUpperCase()    document.form1.cityName.value = document.form1.cityName.value.toUpperCase()}    else {    document.form1.lastName.value = document.form1.lastName.value.toLowerCase()    document.form1.firstName.value = document.form1.firstName.value.toLowerCase()    document.form1.cityName.value = document.form1.cityName.value.toLowerCase()    } } </SCRIPT> <BODY> <FORM NAME="form1"> <B>Last name:</B> <INPUT TYPE="text" NAME="lastName" SIZE=20 onChange="convertField(this)"> <BR><B>First name:</B> <INPUT TYPE="text" NAME="firstName" SIZE=20 onChange="convertField(this)"> <BR><B>City:</B> <INPUT TYPE="text" NAME="cityName" SIZE=20 onChange="convertField(this)"> <P><B>Convert values to:</B> <BR><INPUT TYPE="radio" NAME="conversion" VALUE="upper" onClick="if (this.checked) {convertAllFields('upper')}"> Upper case <BR><INPUT TYPE="radio" NAME="conversion" VALUE="lower" onClick="if (this.checked) {convertAllFields('lower')}"> Lower case <BR><INPUT TYPE="radio" NAME="conversion" VALUE="noChange"> No conversion </FORM>
  • </BODY> </htm>

    相关 the example for the link object.

    相关

  • checkbox, form, and select objects

     

    R&B Jazz Soul

    A radio object is a form element and must be defined within a <FORM> tag.

    All radio buttons in a radio button group use the same name property. To access the individual radio buttons in your code, follow the object name with an index starting from zero, one for each button the same way you would for an array such as forms: document.forms[0].radioName[0] is the first, document.forms[0].radioName[1] is the second, etc.

     

### 实现 Layui 中 Radio 组件的选中状态回显 在 Layui 框架中,可以通过 JavaScript 动态设置 `radio` 的选中状态并重新渲染表单组件来实现回显功能。以下是具体实现方法: #### HTML 部分 定义一个表格结构,并通过模板引擎动态加载数据。 ```html <table id="demo" lay-filter="test"></table> <script type="text/html" id="barDemo"> <a class="layui-btn layui-btn-xs layui-bg-blue " lay-event="detail">查看</a> <a class="layui-btn layui-btn-xs layui-bg-orange" lay-event="edit">编辑</a> <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a> </script> ``` #### 表格配置部分 初始化表格时,需指定列字段以及操作按钮列。 ```javascript { field: "op", title: "操作", width: "15%", align: "center", templet: "#barDemo" } ``` #### 数据回显逻辑 当获取到服务器返回的数据后,在回调函数中处理每一行数据,判断当前用户的 ID 是否匹配目标行的 ID。如果匹配,则手动触发该行对应的 `radio` 并更新其选中状态[^1]。 ```javascript done: function (res, curr, count) { if (userId !== '') { // userId 是全局变量,表示当前登录用户ID $.each(res.data, function (idx, val) { if (userId === val.id) { // 判断是否为目标行 val["LAY_CHECKED"] = 'true'; // 设置 LAY_CHECKED 属性为 true // 找到对应数据改变勾选样式,呈现选中效果 let index = val['LAY_TABLE_INDEX']; $('tr[data-index=' + index + '] input[type="radio"]').prop('checked', true).trigger('click'); // 刷新 radio 选择框渲染 layui.form.render('radio'); } }); } } ``` 上述代码片段实现了以下功能: - **条件筛选**:遍历服务端返回的数据列表,查找与当前用户 ID 匹配的目标行。 - **属性修改**:将目标行对象中的自定义属性 `"LAY_CHECKED"` 设为 `'true'`,用于标记此行为已选中状态。 - **DOM 更新**:利用 jQuery 修改 DOM 节点的状态,确保前端界面同步反映后台数据的变化。 - **重绘组件**:调用 `form.render()` 方法强制刷新 Layui 表单控件,使更改生效。 #### DAO 层支持 为了提供完整的解决方案,DAO 层应负责查询数据库中的省份、城市和地区信息。这些基础数据可以作为下拉菜单或其他关联选项的内容展示给用户[^3]。 ```java public List<Map<String, Object>> initProvince() { String sql = "select * from province"; return jt.queryForList(sql); } public List<Map<String, Object>> initCity(Integer pid) { String sql = "select * from city where pid=?"; return jt.queryForList(sql, pid); } public List<Map<String, Object>> initDist(Integer cid) { String sql = "select * from dist where cid=?"; return jt.queryForList(sql, cid); } ``` 以上 Java 方法分别用于初始化省市区三级联动所需的原始数据集合。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值