J'ai une application asp.net avec un panneau. À l'intérieur de ce panneau, j'ai un bouton d'image et textbox
. J'ai écrit une fonction de validation javascript pour la zone de texte qui affiche une zone d'alerte permettant de saisir certaines valeurs textbox
. Maintenant, cette fonction ne fonctionnait pas, générant une erreur d'exécution:
Objet requis
Mon code est ici:
<asp:Panel ID="pnlTop" runat="server">
<tr height="35px" valign="top">
<td align="right" valign="middle" colspan="2" height="50">
<asp:ImageButton ID="imgbtnGOTO" runat="server" ToolTip="View Specific Record" BorderWidth="0"
ImageAlign="AbsMiddle" OnClientClick="javascript:return fnCheck()"></asp:ImageButton>
<asp:TextBox ID="txtPagingGoto" CssClass="clsTableCellLeft" Width="215px" runat="server" CausesValidation="true"></asp:TextBox>
</td>
</tr>
</asp:Panel>
Ma fonction Javascript est:
function fnCheck() {
if ((document.getElementById("txtPagingGoto").value).length == 0) {
alert("The textbox should not be empty");
}
}
S'il vous plaît suggérer une solution pour cela.
function fncheck()
{
var pgng = document.getElementById("<%=txtPagingGoto.ClientID%>").value.trim();
if(pgnd == "")
{
alert('The textbox should not be empty...');
document.getElementById("<%=txtfname.ClientID%>").focus();
return false;
}
}
Essaye ça :
function fnCheck() {
if ((document.getElementById("<%=txtPagingGoto.ClientID%>").value).length == 0) {
alert("The textbox should not be empty");
}
}
document.getElementById
obtient le runtime généré ID qui est différent (pas toujours) de l'ID côté serveur.
Une solution consiste à utiliser le code jaune comme je l’ai fait.
Aussi: envisagez de bien vouloir utiliser la méthode TRIM. (si vous avez besoin de le gérer).
<html>
<head>
<script type="text/javascript">
function validate()
{
if(document.getElementById("aa").value=="")
{
alert("this textbox should not be empty");
}
}
</script>
</head>
<body>
<input type="txt" id="aa"/>
<input type="button" value="submit" onclick="validate()"/>`
</body>
</html>