Pouze tento týden sleva až 80 % na e-learning týkající se C# .NET. Zároveň využij akce až 50 % zdarma při nákupu e-learningu. Více informací:
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Slevovy týden 3/50
Avatar
jan.vencl
Tvůrce
Avatar
jan.vencl:27.1.2013 10:09

Ahoj mám formulář který se odesílá zpracuje na serveru, ale stránka se opět nenačte mám na to JS funkci. Nicméně nechci to odesílat tlačítkem ale např událostí onblur nebo onchange

zdrojáák stránky:

<html>
<head>

<title></title>
<script type='text/javascript' src='http://code.jquery.com/jquery-1.4.2.min.js'></script>
<script type='text/javascript' src='http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js'></script>
<script>
function get_result()
{
            $("#expression").submit( function () {
              $.get(
               'analyse_string.php',
                $(this).serialize(),
                function(data){
                  $("#worksheet").html(data)
                }
              );
              return false;
            });
}
</script>
</head>
<body>

        <form method='get' name='expression' id='expression' action='#'>
        <input id='input_field' type='text' class='input_form' autocomplete='off' name='str'/>
        <button onblur='get_result()'>odesilam</button>
        </form>

<div id='worksheet'>
</div>
</body>
</html>

zdroj souboru analyse_string.php

<?php
echo $_GET['str'];
?>

zkoušel jsem input fieldu nastavit onblur='get_re­sult()' ale neslape to

Editováno 27.1.2013 10:10
 
Odpovědět
27.1.2013 10:09
Avatar
Odpovídá na jan.vencl
Drahomír Hanák:27.1.2013 11:17

Musíš ten formulář ještě odeslat. Takhle mu jen definuješ událost, co se má zavolat po odeslání. Stačí pod to napsat ještě $('#expression')­.submit();

 
Nahoru Odpovědět
27.1.2013 11:17
Avatar
jan.vencl
Tvůrce
Avatar
jan.vencl:27.1.2013 12:41

to funguje, ale neposle to souboru analyse_string.php data a refreshne se to

 
Nahoru Odpovědět
27.1.2013 12:41
Avatar
Odpovídá na jan.vencl
Drahomír Hanák:27.1.2013 15:17

Jestli se ti obnoví stránka po odeslání formuláře, zkus tam přidat event.preventDe­fault();

function get_result()
{
        $("#expression").submit(function(e) {
                e.preventDefault();
                $.get(
                        'analyse_string.php',
                        $(this).serialize(),
                        function(data){
                                $("#worksheet").html(data)
                        }
                );
                return false;
        }).submit();
}

Jinak data mi to tomu skriptu posílá.

 
Nahoru Odpovědět
27.1.2013 15:17
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.