web-dev-qa-db-ja.com

onclick関数を送信ボタンに追加します

私はちょうどJavaScriptとPHPを学んでいます。連絡先フォームを作成し、送信ボタンを押して次の2つのことを実行したいと思います。

  1. データを送信してください(この部分は機能しています)
  2. 私のonclick関数を読んでください(この部分は機能していません)
<input id="submit" name="submit" type="submit" value="Submit" onclick="eatFood()">

<?php
if ($_POST['submit']) {
 ////????? 
}
?>

メールにデータを送信しているので、それを取得します。しかし、onclick関数は機能していないようです。 送信ボタンにonclick関数を追加 を確認しようとしましたが、役に立ちませんでした。

49
catchmikey

より良いヘルプを得るには、送信ボタンhtmlタグを見る必要があります。私はPHPとポストバックの処理方法に精通していませんが、あなたがやりたいことに応じて、3つのオプションがあると思います:

  1. クライアント側でのonclickボタンの処理の取得:この場合、javascript関数を呼び出すだけです。
function foo() {
   alert("Submit button clicked!");
   return true;
}
<input type="submit" value="submit" onclick="return foo();" />
  1. サーバー側のクリックを処理する場合は、最初にフォームタグメソッド属性がpostに設定されていることを確認する必要があります。

    <form method="post">
    
  2. onsubmit自体からのformイベントを使用して、関数をそれにバインドできます。

<form name="frm1" method="post" onsubmit="return greeting()">
    <input type="text" name="fname">
    <input type="submit" value="Submit">
</form>
54
manman

html:

<form method="post" name="form1" id="form1">    
    <input id="submit" name="submit" type="submit" value="Submit" onclick="eatFood();" />
</form>

Javascript:javascriptを使用してフォームを送信する

function eatFood() {
document.getElementById('form1').submit();
}

onclickメッセージを表示する

function eatFood() {
alert('Form has been submitted');
}
19
stash_man

データを送信する前に何かをする必要がある場合は、フォームの 提出する

<form method=post onsubmit="return doSomething()">
  <input type=text name=text1>
  <input type=submit>
</form>
10

私はこのコードを持っています:

<html>
<head>
<SCRIPT type=text/javascript>
function deshabilitarBoton() {     
    document.getElementById("boton").style.display = 'none';
    document.getElementById("envio").innerHTML ="<br><img src='img/loading.gif' width='16' height='16' border='0'>Generando...";     
    return true;
} 
</SCRIPT>
<title>untitled</title>
</head>
<body>
<form name="form" action="ok.do" method="post" >
<table>
<tr>
<td>Fecha inicio:</td>
<td><input type="TEXT" name="fecha_inicio" id="fecha_inicio"  /></td>
</tr>
</table>
<div id="boton">
   <input type="submit" name="event" value="Enviar" class="button" onclick="return deshabilitarBoton()" />
</div>
<div id="envio">
</div>
</form>
</body>
</html>
3
angheliz
  1. 送信を行うid="hiddenBtn"およびtype="submit"で非表示ボタンを作成します
  2. 現在のボタンをtype="button"に変更します
  3. 現在のボタン呼び出しのonclickfunctionに設定すると、次のようになります。

    function foo() { // do something before submit ... // trigger click event of the hidden button $('#hinddenBtn').trigger("click"); }

1
nguyentaijs
<button type="submit" name="uname" value="uname" onclick="browserlink(ex.google.com,home.html etc)or myfunction();"> submit</button>

スクリプト言語なしでHTMLのボタンをクリックしてページを開きたい場合は、上記のコードを使用できます。