html
  • dart
  • 2012-11-08 19 views 5 likes 
    5

    Diciamo che ho un modulo:Inviare un modulo a Dart utilizzando un collegamento HTML

    <form id = "form1" action = "process.php" method = "post"> 
    ... 
    </form> 
    

    Ora, la presentazione da JavaScript utilizzando collegamento sarebbe simile a questa:

    <a href='javascript:document.forms["form1"].submit()'>Submit</a> 
    

    Come posso fare lo stesso con Dart-lang?

    +0

    Non si usa il link come pulsante di invio per qualsiasi modulo. Devi usare per consentire al tasto invio di funzionare. Vedi il mio post qui sotto per la soluzione. – darkzangel

    risposta

    6

    Non penso che sia possibile utilizzare lo script di dardo in linea all'interno dell'attributo href di <a>.

    Tuttavia, è possibile aggiungere un gestore onclick sul vostro ancoraggio:

    import 'dart:html'; 
    
    main() { 
        AnchorElement a = query("#a1"); 
        a.on.click.add((e){ 
        FormElement form = query("#form1"); 
        form.submit(); 
    
        // stop event 
        e.preventDefault(); 
        e.stopPropagation(); 
        }); 
    } 
    

    E l'ancora può guardare come:

    <a id="a1">Submit</a> 
    

    Se è necessario mantenere il cursore della mano (perché è ormai andato dopo aver preso l'inutile href) o lo stile in altro modo, basta usare i CSS:

    1

    Alexandre Ardhuin si gived un buon inizio di testa, ma è necessario utilizzare un <input type="submit" value="Submit"> per consentire all'utente l'utilizzo del tasto invio sul proprio dispositivo mobile o sul loro tastiera:

    <form> 
        <input type="submit" value="Submit"> 
    </form> 
    

    E il codice dardo:

    main() { 
        Element form = query("form"); 
        form.on.submit.add((e){ 
        // Do your stuff here... 
    
        // Stop event 
        e.preventDefault(); 
        e.stopPropagation(); 
        return false; 
        }); 
    } 
    
    Problemi correlati