2010-08-04 5 views
0
<td colspan ="2" style="width: 64px"> 
    <div style="float:left; padding-left:9px;"> 
     <asp:LinkButton ID="lnkremoveloc" runat="server" 
      OnClick="lnkremoveloc_Click" CssClass="linkclass" 
      style="cursor:pointer" Font-Underline="True" 
      Font-Bold="true" Font-Size="12px"> 
      Remove Location 
     </asp:LinkButton> 
    </div> 
</td> 

Ceci est le bouton de lien d'où je reçois un popup lorsque l'on clique dessus. La page contextuelle est comme ci-dessous. Mais quand je clique sur ce lien, la même page est rafraichie et je lâche le bouton Enregistrer et Annuler au lieu d'ouvrir un popup. Est-ce que quelqu'un peut m'aider. Je n'ai aucune idée d'où je me trompe. Merci beaucoup ...pop up page, quand un bouton de lien est cliqué

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DisableLocation.aspx.cs" Inherits="DisableLocation" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<%--<html xmlns="http://www.w3.org/1999/xhtml" >--%> 


<script language ="javascript" type="text/javascript" > 

function PopupCenter(pageURL, title,w,h) { 
    var left = (screen.width/2)-(w/2); 
    var top = (screen.height/2)-(h/2); 
    var targetWin = window.open (pageURL, title, 'toolbar=no, location=no, directories=no, 
      status=no, menubar=no,scrollbars=no, resizable=no, copyhistory=no, width='+w+', 
      height='+h+', top='+top+', left='+left); 
} 

</script language ="javascript" type="text/javascript"> 


<html> 
<head runat="server"> 
    <title>Disable Location | DealTown.com</title> 
</head> 

<body> 
    <form id="form1" runat="server"> 
     <div style="display: block; background: url(images/reusable_blue_bg.jpg) repeat-x 0 -15px;border-left: #88b9c7 1px solid; border-bottom:#88b9c7 1px solid; border-top:#88b9c7 1px solid; border-right: #88b9c7 1px solid; padding: 0px 2px; height: 236px; min-height: 236px; height: auto; margin-left: auto; margin-right: auto;"> 
     <table align="center" style="width: 554px; border-top-style: none; border-right-style: none; 
      border-left-style: none; border-bottom-style: none" id="TABLE1"> 
      <tr > 
       <td align="center" colspan="5" style="font-weight:normal;font-size:18px;margin: 0px;font-family: Arial;color: #1e7c9b;" >Disable Location</td> 
      </tr> 

      <asp:GridView ID="diableloc" runat="server" AutoGenerateColumns="False" 
      DataKeyNames="LocationName" DataSourceID="getGridMerchantLocationData" 
      AllowPaging="True" EnableViewState="False"> 
      <Columns> 
      <asp:BoundField DataField="chkbox" HeaderText="Select" 
       SortExpression="Selection" /> 
      <asp:BoundField DataField="locname" HeaderText="Location Name" 
       ReadOnly="True" SortExpression="Locnames" /> 
      </Columns> 
      </asp:GridView> 

      <asp:ObjectDataSource ID="ProductsDataSource" runat="server" 
      OldValuesParameterFormatString="original_{0}" 
      SelectMethod="GetLocations" TypeName="string">    
      </asp:ObjectDataSource> 


      </table> 
       <tr> 
       <td style="width: 44px; height: 63px"> 
       </td> 
       <td style="width: 127px; height: 63px"> 
       </td> 
       <td align="left" colspan="2" style="height: 63px; width: 196px;"> 
       <asp:ImageButton ID="btnDisable" runat="server" ImageUrl="~/images/save.gif" OnClick="btnDisable_Click" 
       ValidationGroup="group1" /> 
       <asp:ImageButton ID="btnCancel" runat="server" ImageUrl="~/images/cancel.gif" OnClick="btnCancel_Click" /></td> 
       <td colspan="1" style="width: 92px; height: 63px"> 
       </td> 
      </tr> 

     </div> 
    </form> 
    </body> 
</html> 

Répondre

0

On dirait que la page est en train de publier. Avez-vous essayé AutoPostBack="false"? Pas sûr que vous ayez besoin d'un LinkButton ici. Pouvez-vous simplement utiliser une balise d'ancrage avec onclick au lieu d'invoquer la fenêtre contextuelle?

Avez-vous du code à exécuter côté serveur lorsque vous cliquez sur le bouton de liaison? Si vous avez besoin des deux, vous pouvez utiliser la propriété OnClientClick pour avoir les deux. Cela fait longtemps, mais je pense que vous pouvez faire en sorte que le code serveur ne s'exécute pas si la valeur renvoyée par le code côté client dans onclientclick renvoie false.

Je ne vois pas comment votre LinkButton actuel affiche le popup.

0

Au lieu de OnClick utilisez OnClientClick="lnkremoveloc_Click" où lnkremoveloc_Click est la fonction JavaScript (quelque chose comme PopupCenter vous avez déjà) qui ouvre la fenêtre contextuelle.

0

Définissez onclientclick au lieu de onclick. Et pendant le rendu (chargement de la page) lui-même définir le onclientclick comme "PopupCenter('url','title',....);return false;"

L'url, le titre, la largeur, etc. peuvent être mis en charge. La dernière partie "return false" annulera l'effet du clic. Ainsi, il empêche le retour.

Note: Si vous voulez quelque chose à traiter à côté serveur, de son mieux de ne pas fixer la onclientclick et utiliser Response.write("<script>PopupCenter('url','title',....);</script>");

J'espère que cela aide.

Ceci est mon premier post :)

Questions connexes