Я изо всех сил пытаюсь найти способ решить это.У меня есть сетка, и первый столбец - это DropDownList, определенный в шаблоне элемента:
<asp:GridView ID="gvXYZ" runat="server" DataKeyNames="Serial, XYZValue">
<Columns>
<asp:TemplateField HeaderText="Status">
<ItemTemplate>
<asp:DropDownList ID="ddlStat" runat="server" OnSelectedIndexChanged="ddlStat_SelectedIndexChanged"><asp:ListItem> </asp:ListItem><asp:ListItem> </asp:ListItem><asp:ListItem>OK</asp:ListItem><asp:ListItem>NG</asp:ListItem></asp:DropDownList>
</ItemTemplate>
<FooterStyle HorizontalAlign="Center" VerticalAlign="Middle" Wrap="False" />
<HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" Wrap="False" />
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Wrap="False" />
</asp:TemplateField>
</Columns>
</asp:GridView>
Пользователю предоставляется пустой выбор, OK или NG в качестве возможных выборов.Как я могу запустить либо сторону JavaScript, либо VB для запуска функции, когда пользователь делает какой-либо выбор в любом из DDL в сетке?Чтобы выполнить то, что просили, пользователь должен выбрать либо OK, либо NG.Я пытаюсь связать кнопку Сохранить с тем, что сетка была завершена.Я знаю, что могу запустить JavaScript в раскрывающемся списке HTML, поэтому я попытался создать функцию для этого, и из статьи, которую я нашел, я пытался запустить метод VB из функции javascript:
function ddlStat_SelectedIndexChanged() {
var someValueToPass = 'Hello server';
__doPostBack('CustomPostBack', someValueToPass);
}
сценарий никогдаработает, обратной передачи не происходит и код стороны VB:
Protected Sub ddlStat_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim x As Integer
For x = 1 To 10 : x = x + 1 : Next
End Sub
также никогда не запускается.Я подумал сделать это на стороне VB, потому что я думаю, что мне легче получить доступ к свойствам сетки, например, к числу строк, чтобы я мог проверить DDL в каждом из них.Спасибо вам за это и задавайте вопросы, если мне не ясно.