2017-08-30 4 views
1

Je dois transférer la date d'une forme d'asp à une autre en fonction de certaines vérifications. Dans la page source que je fais le chèque et envoie comme suit:Transférer la date dans le champ de saisie d'une forme d'asp dans une autre en utilisant l'état de session

if (txtFinalized.Text == "" && rblPhysicalrecords.SelectedValue=="1" && ddlResponsibility.SelectedIndex == 5) 
      { 
       //String s = Request.QueryString["finlalisationDate"] = txtFinalized.Text; 
       Session["finlalisationDate"] = txtFinalized.Text; 
      } 

Alors je tente de lire la valeur sous forme de cible, mais je ne peux pas encore obtenir le resut inséré dans le champ de saisie comme je l'ai besoin .

txtFinalised.Text = (string)(Session["finlalisationDate"]); 

Ai-je besoin d'écrire une méthode javascript pour aller chercher le résultat et l'insérer dans le champ et si oui, comment puis-je faire cela?

+0

votre condition 'if' indique' txtFinalized.Text' ce champ doit être vide. Ensuite, vous stockez 'txtFinalized.Text' même champ vide dans la session. Comment vous attendez-vous Une valeur dans le formulaire suivant si elle est vide au premier formulaire? –

Répondre

1

Votre condition a un défaut, il dit txtFinalized doit être vide pour définir une valeur à votre variable de session.

Pour l'apprentissage et de comprendre la session, vous pouvez écrire votre code comme ça ...

//remove txtFinalized from condition 
if (rblPhysicalrecords.SelectedValue=="1" && ddlResponsibility.SelectedIndex == 5) 
{ 
    //check if textFinalized NOT is null or empty 
    if (!String.IsNullOrEmpty) 
    { 
     Session["finlalisationDate"] = txtFinalized.Text; 
    } 
    //if textFinalized is empty set session to a value just to see some text 
    else 
    { 
     Session["finlalisationDate"] = "n/a"; 
    } 
} 

Maintenant lorsque vous chargez votre deuxième formulaire, vous verrez toujours quelque chose dans votre zone de texte textFinalized et de ce que vous voyez, vous savez si l'utilisateur a fait une entrée dans le premier formulaire.

+0

La chose est que txtFinalized.Text; est une date à cet effet, je suis indéfini quand j'essaie de le récupérer dans la page cible. Je dois le convertir à ce jour mais cela n'a pas fonctionné: Session ["finlalisationDate"] = txtFinalized.Text = (phase.Finalisée! = Null)? phase.Finalised.Value.ToString ("dd.MMM.yyyy", ci): ""; – Mindan

+0

@Mindan Cela peut être résolu en stockant txtFinalized comme normal et en récupérant votre date comme Convert.Date (Session ["finlalisationDate"]) – chrillelundmark

0

Vous pouvez modifier votre bloc de condition comme ci-dessous bloc

if (!String.IsNullOrEmpty(txtFinalized.Text) && rblPhysicalrecords.SelectedValue=="1" && ddlResponsibility.SelectedIndex == 5) 
      { 
       //String s = Request.QueryString["finlalisationDate"] = txtFinalized.Text; 
       Session["finlalisationDate"] = txtFinalized.Text; 
      }