Mam formularz na stronie i chcę złożyć przy użyciu javascript:Przesłanie nie działa?
<script>
function deleteFromlist(listname, listvalue)
{
if (confirm("Are you sure you want to delete this?")) {
document.getElementById('fromList').value=listname;
document.getElementById('deleteRecord').value=listvalue;
document.getElementById('watchlistForm').submit(); // fails here
}
}
</script>
<form method='POST'
id='watchlistForm'
enctype='multipart/form-data'
action='process.php'>
<input type='text' name='fromList' id='fromList' value=''>
<input type='text' name='deleteRecord' id='deleteRecord' value=''>
<input type='submit' name='submit' value='submit'>
</form>
Funkcja JavaScript jest wywoływana z href
w tabeli w innym miejscu na stronie. Poprawnie wypełnia pola wejściowe, ale kończy się niepowodzeniem z tym komunikatem:
TypeError: document.getElementById(...).submit is not a function
document.getElementById('watchlistForm').submit();
Jeśli zastąpię dokument .... submit(); z
alert(document.getElementById('watchlistForm').innerHTML
następnie otrzymuję oczekiwane wyjście w oknie alertu. Stąd
document.getElementById('watchlistForm')
ma rozwiązać do elementu formularza.
Dodanie przycisku przesyłania w formularzu działa zgodnie z oczekiwaniami.
Pytanie
jestem na coś straty, dlaczego to nie działa.
Nie znaczy "document.getElementById ('') deleteRecord value = listvalue;". ? Myślę, że zapomniałeś .value –
Czy masz wiele WatchlistForm (s)? – Liam
Spróbuj sprawdzić wynik polecenia 'console.log (document.getElementById ('watchlistForm'). Submit)' - jeśli to nie jest funkcja, to da ci wskazówkę. – GreyCat