我在一个组中有4个单选按钮,比如1,2,3,4,加上radiobutton1还有另外两个输入文本框。当我选择radiobutton1时,这些文本框将被启用,但是在选择单选按钮2,3,4时,文本框将被禁用。选择单选按钮2,3,4并禁用文本框后,如果选择回radiobutton1,则应启用文本框。默认情况下(首次加载页面时),将选择单选按钮1和启用文本框。
这是我用MVC3编写的使用Razor视图引擎编写的HTML代码。
@Html.RadioButtonFor(m => m.Search, "rb1", new { Checked = "true", id = "1" })radio 1
<td>@Html.TextBoxFor(m => m.textbox1, new { style = "width:11%" })
<td>@Html.TextBoxFor(m => m.textbox2, new { style = "width:11%" })
@Html.RadioButtonFor(m => m.Search, "rb2", new { id = "2" })radio 2
@Html.RadioButtonFor(m => m.Search, "rb3", new { id = "3" })radio 3
@Html.RadioButtonFor(m => m.Search, "rb4", new { id = "4" })radio 4
我需要在最少的代码行中使用jquery来完成这个任务。有什么建议吗?
发布于 2012-09-13 23:10:37
$("#r1").click(function () {
$(".myText").attr("disabled", false);
});
$(".disableText").click(function () {
$(".myText").attr("disabled", true);
});
HTML:
<input type="radio" name="r" id="r1" />
<input type="radio" name="r" id="r2" class="disableText" />
<input type="radio" name="r" id="r3" class="disableText" />
<input type="radio" name="r" id="r4" class="disableText" />
<input type="text" id="t1" class="myText" disabled="disabled" />
<input type="text" id="t2" class="myText" disabled="disabled" />
发布于 2012-09-13 23:53:00
jQuery
$('input[type="radio"]').click(function() {
if($(this).index() == 0) {
$('input[type="text"]').removeAttr('disabled');
} else {
$('input[type="text"]').prop('disabled', 'disabled');
}
});
<input type="radio" name="group" />
<input type="radio" name="group" />
<input type="radio" name="group" />
<input type="radio" name="group" />
<input type="text" disabled="disabled" />
<input type="text" disabled="disabled" />
https://stackoverflow.com/questions/12419585
复制相似问题