13/09/2010, 22:28
|
| | Fecha de Ingreso: marzo-2010
Mensajes: 4
Antigüedad: 14 años, 9 meses Puntos: 0 | |
Ayuda!!! Gridview con JavaScript Saludos a todos ojala puedan ayudarme con este error que aparece al momento de hacer Edit / Update adjunto en la Imagen. [URL="http://www.imaxenes.com/imagen/error1mm79f4.jpg.html"]VER IMAGEN AQUI![/URL]
El LinqDataSource hace todo el trabajo de traerme los registros y tengo la opción de editarlos por el gridview, para esto he habilitado las opciones de Edit, Delete, Update. Pero al momento de realizar el EDIT me salta el error y ya no se ni que hacer!!!! Por qué pasa por el RowDataBound y justo ahi tengo codigo para que haga referencia al JavaScript!!!!! Algunos Consejos para solucionar el error …
Lo que trato de hacer es que tengo una tabla de artículos … y deseo multiplicar el ARTICULO * EL PRECIO del lado del cliente para que haga rápido la multiplicación y en una columna nueva se almacena el resultado para eso tengo que usar JavaScript.
gracias de antemano dejo mi código.
Si alguien tiene un EJEMPLO MEJOR … POR FAVOR PASEMELO! Gracias =)
------------------------------------------------------------------------------------------------------
<script language="javascript" type="text/javascript">
function UpdateField(numID,txt1,txt2,total)
{
var txtval1=document.getElementById(txt1).value !="" ? document.getElementById(txt1).value : "0";
var txtval2=document.getElementById(txt2).value !="" ? document.getElementById(txt2).value : "0";
var total1=parseInt(txtval1)* parseInt(txtval2);
document.getElementById(total).innerHTML=total1;
if(document.getElementById(txt1).value=="" && document.getElementById(txt2).value=="")
document.getElementById(total).innerHTML="";
document.getElementById(txt1).disabled=false;
document.getElementById(txt2).disabled=false;
}
}
</script>
------------------------------------------------------------------------------------------------------
<asp:LinqDataSource ID="lds_DISPONIBLE" runat="server"
ContextTypeName="AlmacenModelEntities" EnableDelete="True"
EnableInsert="True" EnableUpdate="True" TableName="ARTICULOS_DISPONIBLES">
</asp:LinqDataSource>
<asp:GridView ID="GridView1" runat="server" DataSourceID="lds_DISPONIBLE"
EnableModelValidation="True" Width="100%" AutoGenerateColumns="False"
DataKeyNames="ID_ARTICULO" onrowdatabound="GridView1_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="AS">
<ItemTemplate>
<asp:CheckBox ID="chkItem_" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField=" ID_ARTICULO " HeaderText=" ID_ARTICULO "
InsertVisible="False" ReadOnly="True" SortExpression="NUM_SECUENCIA" />
<asp:BoundField DataField="DES_CONCEPTO" HeaderText="DES_CONCEPTO"
SortExpression="DES_CONCEPTO" />
<asp:TemplateField HeaderText="CANTIDAD_ARTICULO" SortExpression="CANTIDAD_ARTICULO">
<ItemTemplate>
<asp:TextBox ID="txtmark1" runat="server" Text='<%# Bind("CANTIDAD_ARTICULO") %>'></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("CANTIDAD_ARTICULO") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="MON_PRECIO" SortExpression=" MON_PRECIO ">
<ItemTemplate>
<asp:TextBox ID="txtmark2" runat="server" Text='<%# Bind("MON_PRECIO") %>'></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("MON_PRECIO") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Total">
<ItemTemplate>
<asp:Label ID="lblTotal" runat="server" Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowEditButton="True" ShowSelectButton="True" />
</Columns>
</asp:GridView>
------------------------------------------------------------------------------------------------------
protected void GridView1_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TextBox txt1 = (TextBox)e.Row.FindControl("txtmark1");
TextBox txt2 = (TextBox)e.Row.FindControl("txtmark2");
Label Lbl1 = (Label)e.Row.FindControl("lblTotal");
CheckBox chk1 = (CheckBox)e.Row.FindControl("chkItem__"); // AQUI ME SALTA EL ERROR!!!!!!!!!!!!!!!!!!!
txt1.Attributes["onKeyup"] = "javascript:return UpdateField('" + chk1.ClientID + "','" + txt1.ClientID + "','" + txt2.ClientID + "','" + Lbl1.ClientID + "')";
txt2.Attributes["onKeyup"] = "javascript:return UpdateField('" + chk1.ClientID + "','" + txt1.ClientID + "','" + txt2.ClientID + "','" + Lbl1.ClientID + "')";
}
}
------------------------------------------------------------------------------------------------------ |