Fórum pegar codigo do grid via JS #23400
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
Gostei + 0
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
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)