Откуда взялся этот javascriptc ?..
Всем привет.
Сценарий:
У меня есть простой GridView с ItemTemplateField, в котором есть флажок. Такой флажок подключен для запуска события onCheckedChanged, которое я почему-то игнорирую, срабатывает только при проверке, но не при снятии флажка. В свою очередь, каждое событие onCheckedChanged такого рода получает сигнал каким-то образом, где-то и срабатывает последовательно после того, как другой элемент управления запускает свое событие на стороне сервера.
Во всяком случае, вопрос не в этом. Вот сетка, и, как вы можете видеть, checkbos не привязан ни к одному источнику данных:
<asp:GridView ID="Grid" runat="server" AutoGenerateColumns="False" > <Columns> <asp:TemplateField Visible="false"> <ItemTemplate><asp:Label id="lbCesionID" runat ="server" Text='<%# Eval("idCesion") %>' /></ItemTemplate> </asp:TemplateField> <asp:TemplateField> <ItemTemplate><asp:CheckBox runat="server" ID="chkSelected" AutoPostBack="true" OnCheckedChanged="GridCheckedChanged" Checked="false" /></ItemTemplate> </asp:TemplateField> <asp:BoundField DataField="DBSourceField" HeaderText="ThisHeader" ></asp:BoundField> </Columns> </asp:GridView>
Глядя на html-код, Я нашел, прикрепленный к моей галочки:
onclick="javascript:setTimeout('__doPostBack(\'ctl00$MainContent$ucCesionesDocs$Grid$ctl02$chkSelected\',\'\')', 0)"
И поскольку я понятия не имею, как он туда попал, я, безусловно, обвиняю его в моем препятствии.
Кто-нибудь знает, откуда берется такая штука? Где я мог бы добавить его, не зная. Если да, то как я могу от него избавиться?
Спасибо за вашу помощь.
Что я уже пробовал:
Перехват события OnRowDataBound, размещение флажка в строке сетки и удаление атрибута "onclick", но этот вызов javascript остается на месте.
Я нашел функцию setTimeout, определенную в JQuery, но, опять же, я не добавляю такую вещь (по крайней мере, нарочно).