У меня есть функция JS для переключения состояния проверки для всех флажков в gridview. Теперь есть два похожих gridviews и так, хотелось бы использовать ту же функцию.Использовать одну функцию Javascript для нескольких GridViews
Это структура Страница:
RadioButton RB1, RB2 RadioButton
Gridview GV1, GridView GV2.
rb1 selected, показывает только gv1 и скрывает gv2 и наоборот.
При загрузке страницы проверяется только rb1 и отображается gv1.
Функция JS работает нормально, если используется только для одного вида сетки. Я изменил его на это, и он не работает. Где я иду не так.
JS:
<script type="text/javascript">
function SelectAll(chkBox)
{
var chkAll = document.getElementById(chkBox);
var elements;
var g1 = document.getElementById('<%=gv1.ClientID%>');
var g2 = document.getElementById('<%=gv2.ClientID%>');
if(g1.style.visibility=='visible')
{
elements = document.getElementById('<%=gv1.ClientID%>')
.getElementsByTagName("INPUT");
}
else if(g2.style.visibility=='visible')
{
elements = document.getElementById('<%=gv2.ClientID%>')
.getElementsByTageName("INPUT");
}
for(var i=0;i<elements.length;i++)
{
var chk;
if(elements[i]!=null)
{
if(elements[i].id.indexof('chkLeaveType')>0)
{
chk=elements[i];
chk.checked = chkAll.checked;
}
}
}
}
</script>
ASPX:
OnClick = "SelectAll (this.id)" /> Оставить Тип
<asp:gridview id="gv2" runat="server">
<columns>
<asp:templatefield>
<headertemplate>
<asp:checkbox id="chkheader" runat="server" checked="true"
onclick="SelectAll(this.id)"/>Leave Type
</headertemplate>
<itemtemplate>
<asp:checkbox id="chkLeaveType" runat="server" checked="true"/>
</itemtemplate>
</asp:templatefield>
</columns>
</asp:gridview>
Извините. Это был Типо с моего конца. Это было фактически ... getElementByTagName ("INPUT"); Не могли бы вы предложить вам процедуру. Что еще мне нужно сделать, чтобы он работал. – Ruby
Я думаю, что вам также не хватает окончательного '}'. Граф смотрит на меня. –
Если это не помогает, я бы проверял, что 'g1.style.visibility == 'visible'' действительно истинно, когда отображается сетка 1, используя инструменты отладки вашего браузера. –