如何设置select只读不可编辑且select的值可传递
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置select只读不可编辑且select的值可传递相关的知识,希望对你有一定的参考价值。
1. <select style="width:195px" name="role" id="role" onfocus="this.defaultIndex=this.selectedIndex;" onchange="this.selectedIndex=this.defaultIndex;">这种方法可以使下拉框和平常没有区别,看起来没有任何不同。唯一不同的就是下拉并单并选择之后,它不会鸟你,选了和没有选一样一样的。就是无视客户的选择。
2.设置disabled属性<select style="width:195px" name="role" id="role" disabled="disabled">
这个看起来更直接,直观就是有只读的感觉,也不可以点击和下拉了。里面的字也会变成灰色
当属性设置为"disabled"时,提交表单时,select的值无法传递,提交前移除disabled属性$("#role").removeAttr("disabled");
jquery添加属性$("#role").attr("disabled","disabled"); 参考技术A 尝试在option标签的onclick事件处理函数中加入:
evt=evt||window.event;//取Event对象
if(flag==1)//你判断是否只读的标志
if(evt.preventDefault)
evt.preventDefault();//阻止默认的行为发生
else
evt.returnValue=false;
//下面写自己的处理方法
设置输入中的Java脚本为只读的值
如何设置输入html中Java脚本的只读值(按类读取)?
HTML
<input type="time" class="start" />
<select class="selectboxlist" >
<option>
<option>
<option>
<option>
...
</select>
Java脚本中的疲倦内容
if (selectboxlist.selectedIndex == 2 || selectboxlist.selectedIndex == 13 || selectboxlist.selectedIndex == 14) {
start.value = "00:00"; // works
start.setAttribute.readonly = true; // doesnt work
}
答案
设置这样的属性
start.setAttribute('readonly',true)
function func()
{
var selectboxlist=document.querySelector('select');
if (selectboxlist.selectedIndex == 2 || selectboxlist.selectedIndex == 13 || selectboxlist.selectedIndex == 14) {
var start=document.querySelector('.start')
start.value = "00:00"; // works
start.setAttribute('readonly',true) // doesnt work
console.log(start)
}
}
<input type="time" class="start" />
<select class="selectboxlist" onchange="func()">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
</select>
另一答案
您可以获取输入元素,然后将其readOnly属性设置为true:
document.querySelector('.input').readOnly = true;
以上是关于如何设置select只读不可编辑且select的值可传递的主要内容,如果未能解决你的问题,请参考以下文章