Visualizzazione dei risultati da 1 a 6 su 6

Discussione: script combinati

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283

    script combinati

    ciao a tutti.

    premetto che javascript non è il mio campo.

    in un form utilizzo questo script come allert per due campi "menu" e "menu_sel" nel primo è possibile inserire un testo manualmente io secondo selezionandolo da una select.
    --------------------------------------------------
    <script>
    function controlla(){
    var f = document.nuovo;

    if(document.nuovo.menu!=undefined && f.menu.value == "" && f.menu_sel.value == ""){
    alert("<%=tp("amm_menu_nuovo_13")%>")
    f.menu.focus();
    return false; }

    return true; }
    </script>
    --------------------------------------------------
    adesso ho avuto la necessità di disattivare uno dei due campi se l'utente seleziona "menu" disattiva "menu_sel" o viceversa
    --------------------------------------------------
    <script>
    function disabilita_menu(){
    document.nuovo.menu.disabled=true;
    document.nuovo.menu_sel.disabled=false;}
    </script>
    --------------------------------------------------
    e fin quì funziona tutto solo che quando clicco su invia il primo script "controlla" mi avverte se il campo è vuoto ma non bloccare l'invio

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    :master:

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    codice:
    if(document.nuovo.menu!=undefined && (!f.menu.disabled && f.menu.value == "") && (!f.menu_sel.disabled && f.menu_sel.value == "")){
    prova, non sono certo di aver capito bene la dinamica

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    mi rispiego

    il primo script mi controlla che i campi siano riempiti, il secondo siccome ho un dato "menu" che è possibile inserirlo manualmente o da una select capita che molti selezionano la select e inseriscono il menu manualmente per cui ho la necessità di disattivare uno dei due campi.

    provo a ripostare il codice diversamente
    -------------------------------------

    <script>
    function disabilita_menu(){
    document.nuovo.avanti_link_menu.disabled=true;
    document.nuovo.menu.disabled=true;
    document.nuovo.menu_sel.disabled=false;}
    </script>

    <script>
    function abilita_menu(){
    document.nuovo.avanti_link_menu.disabled=false;
    document.nuovo.menu.disabled=false;
    document.nuovo.menu_sel.disabled=true;}
    </script>

    <script>
    function controlla(){
    var f = document.nuovo;

    if(document.nuovo.menu!=undefined && f.menu.value == "" && f.menu_sel.value == ""){
    alert("<%=tp("amm_menu_nuovo_13")%>")
    f.menu.focus();
    return false; }
    return true; }
    </script>


    <form name="nuovo" onSubmit="return controlla()" method="post" action="amm_menu_nuovo.asp?fase=<%=fase%>">

    <select onclick="javascript:disabilita_menu()" size="1" name="menu_sel">
    <option value="<%=rs("nome_menu")%>"><%=rs("nome_menu")%></option>
    </select>

    <input onclick="javascript:abilita_menu()" type="text" name="menu" size="40">

    ecc. ecc.....
    <input class="bottone_amm" name="sottomenu" type="submit" value="<%=tp("amm_menu_nuovo_06")%>">
    <input class="bottone_amm" name="avanti_link_menu" type="submit" value="<%=tp("amm_menu_nuovo_05")%>">
    </form>

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    la condizione e' cosi'
    codice:
    if(document.nuovo.menu!=undefined && ((!f.menu.disabled && f.menu.value == "") || (!f.menu_sel.disabled && f.menu_sel.value == ""))){
    l' onclick cambialo in onchange

    con i gestori di evento non serve specificare javascript:

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.