JAVA SCRIPT

giovedì 09 ottobre 2003 - 10.05

1234 Profilo | Newbie

Ciao,
devo scrivere del codice in java script ma non sono in grado e non riesco a trovare della documentazione per aiutarmi a risolvere il mio caso; ecco la mia situazione:

in un Web form ho 3 web control:
1. DropDownList che chiamo ddl
2. TextBox che chiamo txt
3. Label che chiamo lab
Quando l'utente accede alla pagina web ha la possibilità di modificare il txt in due modi:
1. scrive a manina un importo
2. seleziona dal ddl un valore che dovrebbe essere poi riportato nel txt
Sia nella prima possibilità che nella seconda, la web form deve essere in grado di effettuare un calcolo con l'importo del txt e riportare il risultato nel lab.

Onde evitare di fare troppi postback sul server, vorrei tanto poter scrivere del codice lato client che faccia tutto quanto descritto sopra sul client. Per ora sto utlizzando eventi come txt_TextChanged e ddl_SelectedIndexChanged.

come posso fare?

Brainkiller Profilo | Guru

Ciao,
la cosa è simile in Javascript come in .NET devi intercettare client side gli eventi sugli oggetti HTML renderizzati. Mi pare di aver capito più o meno ciò che cerchi, prova a creare una pagina HTML e incolla questo codice, in pratica c'è un combobox, in base all'elemento che tu selezioni, un textbox viene riempito con il contenuto.
Cerca di capirne il funzionamento e poi lo riporti in ASP.NET.
Ciao
David De Giacomi

<html>
<title>prova</title>
<script language="Javascript">

function check()
{
document.all.etichetta.value=document.all.combo[document.all.combo.value].text;
}

</script>
<body>

<select onchange="check()" id="combo">
<option value=1>Operatore Finanziario</option>
<option value=2>Consulente Finanziario</option>
<option value=3>Investitore Privato</option>
<option value=0>Altro</option>
</select>
Valore Selezionato:&nbsp;<input type="box" id="etichetta">

</body>
</html>

1234 Profilo | Newbie

Il suggerimento funziona ma....
Ho bisogno ancora un grande favore:

Ecco i miei dati:
<SELECT id="ddlInActUnit" onchange="SetHours()" name="ddlInActUnit" runat="server"> <OPTION value="0">10unit=1h</OPTION> <OPTION value="1">42unit=4h12min</OPTION>
<OPTION selected value="2">84unit=8h24min</OPTION>
</SELECT>

Di seguito spiego cosa deve succedere alla selezione delle OPTION:
1. le prime 2 ciffre dovranno essere riportate in un campo txt
2. queste 2 ciffre dovranno essere convertite in ore con un preciso calcolo: esempio: (10 * 6)/ 60, il risultato verrà riportato in un label

Il campo txt del primo punto può essere modificato a manina: se viene modificato io non vorrei che partisse un post back ma ancora del codice parte client che facesse quanto segue:
1. se l'importo scritto è superiore a 84, allora evidenziarlo in rosso; se inferiore evidenziarlo in verde; se è 84 dovrà rimanere nero
2. l'importo scritto a manina dovrà subire la stessa conversione del punto 2 subito sopra descritto: il risultato verrà riportato in un label

GRAZIE MILLE

Brainkiller Profilo | Guru

Ciao,
purtroppo quanto potevo fare l'ho fatto, ti ho dato un pezzo di codice che è lo start, dopo devi continuare tu documentandoti su come funziona il Javascript, che istruzioni ha, ecc. è tutto un altro linguaggio. Capisci che non posso scriverti integralmente lo script, se no come dico spesso a qualcuno qui del Forum a fine mese ti mando la fattura a casa ! :)

Purtroppo il Javascript è fra l'altro un linguaggio abbastanza ostico che non mi è mai piaciuto molto, però quando ho bisogno di cose piccole come queste lo uso ma niente di più. In ogni caso se vuoi fare validazione client side è l'unica opzione abbastanza potente.

Ciao
David De Giacomi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5