我正在尝试将单选按钮与指定的文本输入相关联。如图所示,有两个选项。我知道可以使用
注意:输入的金额将被插入到数据库中,因此这是表格中最重要的部分。目前,如果我点击$Off,仍然可以在% Off中输入数字。我不希望发生这种情况,以免用户感到困惑。
我的标记:
for = ""
将标签与单选按钮关联起来,但是如何将其与下面的文本输入也关联起来,反之亦然,以便当我专注于文本输入时,如果专注于正确的单选按钮?注意:输入的金额将被插入到数据库中,因此这是表格中最重要的部分。目前,如果我点击$Off,仍然可以在% Off中输入数字。我不希望发生这种情况,以免用户感到困惑。
我的标记:
<div class="row-fluid control-group">
<div class="span7 pull-left">
<label class="radio" for="discount-dollars">
<input type="radio" name="discount" id="discount-dollars" value="dollars" checked="checked">
$ Off
</label>
<div class="input-append">
<input type="text" name="discount-dollars-amount" id="discount-dollars-amount" class="input-small dollars" placeholder="enter amount">
<span class="add-on">.00</span>
</div>
</div><!-- .span7 .pull-left -->
<div class="span5">
<label class="radio" for="discount-percent">
<input type="radio" name="discount" id="discount-percent" value="percent">
% Off
</label>
<input type="text" name="discount-percent-amount" id="discount-percent-amount" class="input-small percent" placeholder="enter amount" disabled="disabled">
</div>
</div><!-- .row-fluid .control-group -->
<script type="text/javascript">
$(function (){
$("form input[type=radio]").click(function (){
// get the value of this radio button ("dollars" or "percent")
var value = $(this).val();
// find all text fields...
$(this).closest("form").find("input[type=text]")
// ...and disable them...
.attr("disabled", "disabled")
// ...then find the text field whose class name matches
// the value of this radio button ("dollars" or "percent")...
.end().find("." + value)
// ...and enable that text field
.removeAttr("disabled")
.end();
});
});
</script>