我使用以下代码显示“pers”并隐藏“bus”,反之亦然
JQuery的:
$('input[name="perorbus"]').click(function() {
if ($(this).attr('id') == 'bus') {
$('#showbus').show();
$('#showper').hide();
}
if ($(this).attr('id') == 'pers') {
$('#showper').show();
$('#showbus').hide();
}
});
HTML:
<fieldset id="perorbus">
<label style="font-size: large;">Personal Or Business?</label>
<br/>
<input type="radio" class="PerOrBus" value="pers" id="pers" name="perorbus"/>
<label style="font-size: medium;">Personal Customer</label>
<input type="radio" class="PerOrBus" id="bus" value="bus" name="perorbus"/>
<label style="font-size: medium;">Business Customer?</label>
<br/>
</fieldset>
<table id="showper">
<tr>
<td>Show Personal</td>
</table>
<table id="showbus">
<tr>
<td>Show Business</td>
</table>
我在页面上放置的任何其他单选按钮都会触发此按钮。它们都被赋予了如下名称属性:
<fieldset id="CACCc">
<input type="radio" id="1b" class="2b" value="4b" name="1b"/> Yes
<br/>
<input type="radio" id="id12" class="4class" value="4c" name="id12"/> No
<br/></fieldset>
但是,我必须使用jquery在doc ready上分配名称,如下所示:
document.getElementById("1b").setAttribute('name', '1b');
document.getElementById("id12").setAttribute('name', 'id12');
这是因为我仅限于在HTML(长篇故事)中使用名称属性
任何帮助都会很棒,谢谢
答案 0 :(得分:0)
尝试通过单选按钮然后单击单选按钮的名称。还可以使用更改触发器。顺便说一句,您的fieldset具有相同的名称。这可能是一个问题。
$(document).ready(function() {
// Update names
$('input[type=radio][name=perorbus]').change(function() {
if (this.id == 'bus') {
$('#showbus').show();
$('#showper').hide();
}
if (this.id == 'pers') {
$('#showper').show();
$('#showbus').hide();
}
});
});
答案 1 :(得分:0)
我的问题的答案具体是这是一个Sharepoint缓存问题。因为我无权删除缓存,所以我只是重命名并重新识别所有内容并使其正常工作。
这可能无法解决其他人的问题,但其他答案应该是。