我有两个标签名为A&的单选按钮。 B和两组具有类名groupA和groupB的文本框。我的要求是当用户检查radiobutton A时,B组文本框中的所有值都将清除,当用户检查Radiobutton B时,GroupB文本框再次填充其原始值和A组文本框值将清除,反之亦然。为此,我能够根据类清除文本框值。但是当用户检查其中一个单选按钮时,我如何填充所有以前的值?下面是我的代码。
Option Explicit
Public intReturnToHold As Double
Sub call_function()
Debug.Print Alt(2, intReturnToHold)
End Sub
Function Alt(Soc1 As Double, Optional ByRef intHoldAlt)
Static D As Integer
Alt = intReturnToHold
If Soc1 >= 40 Then
Alt = 0
ElseIf Soc1 <= 30 Then
Alt = 1
End If
intHoldAlt = Alt
End Function
非常感谢任何帮助。
答案 0 :(得分:1)
您没有显示您的HTML,因此我不确定我的字段是否正确。但这是我提出的:
<body>
<form>
<input id="id1" type="radio" name="test" value="A" />Group A
<input type="hidden" name="hidden_a1" />
<input type="hidden" name="hidden_a2" />
<input class="groupA" type="text" name="text_a1" disabled="disabled" />
<input class="groupA" type="text" name="text_a2" disabled="disabled" />
<br />
<input id="id2" type="radio" name="test" value="B" />Group B
<input type="hidden" name="hidden_b1" />
<input type="hidden" name="hidden_b2" />
<input class="groupB" type="text" name="text_b1" disabled="disabled" />
<input class="groupB" type="text" name="text_b2" disabled="disabled" />
</form>
</body>
这是JavaScript代码:
$(document).ready(function() {
$('#id1').on('click', {
show: 'A',
hide: 'B'
}, choose_group);
$('#id2').on('click', {
show: 'B',
hide: 'A'
}, choose_group);
});
function choose_group(event) {
$('.group' + event.data.show).each(function(index) {
$(this).prop('value', $('[name="' + $(this).prop('name').replace('text', 'hidden') + '"]').prop('value'));
$(this).prop('disabled', false);
});
$('.group' + event.data.hide).each(function(index) {
$('[name="' + $(this).prop('name').replace('text', 'hidden') + '"]').prop('value',
$(this).prop('value'));
$(this).prop('value', '');
$(this).prop('disabled', true);
});
}