2010-05-20 9 views
0

J'ai un problème suivant, j'utilise une boîte de dialogue popup jquery avec asp: formview.asp net jquery boîte de dialogue popup dans asp: formview

le but de ce pop-up est pour l'utilisateur d'entrer un lien hypertexte qui est ensuite placé dans le contrôle de zone de texte dans formview

la div de dialogue pop-up est situé à l'extérieur d'un formview juste après la balise body

<body style="background-color: #FFFFFF; font-family:Lucida Console;"> 

     <div id="dialog-form" title="sdfdfsdf" style="font-size:14px; "> 
      <form> 
      <fieldset> 
       <label for="link">sdfdf</label> 
       <input type="text" name="sdfsdf" id="link" size="32" /> 
      </fieldset> 
      </form> 
     </div> 

    <form id="form1" runat="server" style="margin-top:50px;" > 
    <div> 

     <asp:FormView ID="FormView1" 

....... 
    <InsertItemTemplate> 
    ... 
     <sometextbox ...../> 
     <button id="create-user" class="ui-state-default ui-corner-all">Create link</button> 
    ... 
    </InsertItemTemplate> 

Après en cliquant sur un bouton, une fenêtre contextuelle est affichée MAIS la page commence à se rafraîchir immédiatement et, bien sûr, la fenêtre contextuelle est alors masquée.

Si je translater le bouton en dehors de la formview - la page n'est pas rafraîchi, mais j'ai besoin dans formview ..

Toute idée de quoi faire?

Répondre

0

ajoutez l'attribut suivant au bouton:

onclick="javascript: return false;" 
+0

grand thx !! ça m'a aidé! mais maintenant je un autre problème, je veux passer la valeur de popup pour le contrôle FreeTextBox i utiliser folowing Code FTB_API [ 'FreeTextBox1'] SetHtml ("link.val()"). mais le code stucks sur cette ligne, il ne peut pas trouver FreeTextBox que si elle est en dehors de la formview - tout va bien et valeur est définie si j'utilise document.getElementById ('<% = FormView1.FindControl ("FreeTextBox1 ") .ClientID%> '); iit trouve le contrôle mais je me demande comment puis-je utiliser la méthode SetHtml() de FreeTextBox dans ce cas .. help plz! – qwebek

+0

Vous devez convertir la valeur de retour de getElementByID au type JavaScript FreeTextBox. – Hogan

+0

thx, je vais essayer) – qwebek

0

ce comportement ne devrait pas sortir parce qu'il est un bouton pas soumettre le bouton.
il semble quand il est à l'intérieur de la vue formulaire qu'une action de soumission y est attachée, vérifiez vos scripts jQuery peut-être que vous avez ajouté par erreur onclick submit en attachant la boîte de dialogue.

+0

non, pas soumettre à coup sûr – qwebek

+0

thx pour l'aide! 1) – qwebek

0

J'ai trouvé ma réponse:

clientId doit être utilisé:

FTB_API['<%=FormView1.FindControl("AdminCommentTextBox").ClientID%>'].SetHtml(...)