pegar codigo do grid via JS
10/03/2008
0
Galera tenhu um grid comun na minha pagina
Desculpe se o código tiver errado é que eu dei uma editada pra vicar melhor
<asp:GridView ID="gridFornecedor" runat="server" <Columns> <asp:BoundField DataField="COD_FORN" HeaderText= "Código"> </asp:BoundField> <asp:BoundField DataField="RAZ_SOC_FORN" HeaderText= "Razão Social"> </asp:BoundField> <asp:BoundField DataField="NOM_FAN_FORN" HeaderText="Nome Fantasia"> </asp:BoundField> </Columns> </asp:GridView>
Desculpe se o código tiver errado é que eu dei uma editada pra vicar melhor
Ricardo Silva
Curtir tópico
+ 0
Responder
Posts
10/03/2008
Ricardo Silva
Continuando, enviei sem quuerer (rsrsr)
se o usuario der um clique ele pinta aquela linha
se der dois clique ele chama uma tela de edição
pra fazer isso eu usei um codigo javaScript, assim:
no RowDataBouns do code-binhide fica asim:
Bom até aki ta funcionando
o que eu quero fazer é a função do doubleClique funcionar em um Buton
eu tentei algo assim:
porem ele ta deixando o currentRowId esta em Zero
Pergunta alguem sabe como se faz pra armazenar o codigo da linha que o uaurio clicar via JavaScript
se o usuario der um clique ele pinta aquela linha
se der dois clique ele chama uma tela de edição
pra fazer isso eu usei um codigo javaScript, assim:
var currentRowId = 0; function SelectRow(){ if (event.keyCode == 40) MarkRow(currentRowId+1); else if (event.keyCode == 38) MarkRow(currentRowId-1); if (event.keyCode == 13) Enter(currentRowId); if (event.keyCode == 46) Excluir(currentRowId); } function MarkRow(rowId){ if (document.getElementById(rowId) == null) return; if (document.getElementById(currentRowId) != null) document.getElementById(currentRowId).style.backgroundColor = ´#ffffff´; currentRowId = rowId; document.getElementById(rowId).style.backgroundColor = ´ffff00´; } function dobleClique(selecionado){ var _pagina = "wf_CadFornecedor.aspx?id=" + selecionado; var _option = "dialogHeight: 370px; dialogWidth: 600px; status: no; center : yes; scroll: No"; window.showModalDialog(_pagina,´´, _option); } function butonEdite(){ var _pagina = "wf_CadFornecedor.aspx?id=" + currentRowId; var _option = "dialogHeight: 370px; dialogWidth: 600px; status: no; center : yes; scroll: No"; window.showModalDialog(_pagina,´´, _option); }
no RowDataBouns do code-binhide fica asim:
private int _i = 0; protected void gridFornecedor_RowDataBound(object sender, GridViewRowEventArgs e) { if(e.Row.RowType == DataControlRowType.DataRow && (e.Row.RowState == DataControlRowState.Alternate || e.Row.RowState == DataControlRowState.Normal)) { e.Row.Attributes.Add("onMouseOver", "this.style.cursor=´hand´;"); //e.Row.Attributes.Add("onMouseOut", "this.style.backgroundColor=´#ffffff´"); e.Row.Attributes.Add("id", _i.ToString()); e.Row.Attributes.Add("codigo", e.Row.Cells[1].Text); e.Row.Attributes.Add("onKeyDown", "SelectRow();"); e.Row.Attributes.Add("onClick", "MarkRow(" + _i.ToString() + ");"); e.Row.Attributes.Add("onDblClick", "dobleClique(" + e.Row.Cells[1].Text + ");"); _i++; } }
Bom até aki ta funcionando
o que eu quero fazer é a função do doubleClique funcionar em um Buton
eu tentei algo assim:
protected void btnEditar_Click(object sender, EventArgs e) { string jScript = ""; jScript += "<script type=´text/javascript´>"; jScript += "butonEdite();"; jScript += "</script>"; ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "_edite", jScript, false); } }
porem ele ta deixando o currentRowId esta em Zero
Pergunta alguem sabe como se faz pra armazenar o codigo da linha que o uaurio clicar via JavaScript
Responder
12/03/2008
Ricardo Silva
Galera axo que axei a solução pra esta pogueira....
é um pouco complicado... qndo eu tiver um tempinho a mais eu vo posta a solução, e ainda orientada Bunitinha...
é um pouco complicado... qndo eu tiver um tempinho a mais eu vo posta a solução, e ainda orientada Bunitinha...
Responder
Clique aqui para fazer login e interagir na Comunidade :)