68

私はちょうどjavascriptとphpを学んでいます。お問い合わせフォームを作成しました。送信ボタンを押したときに次の 2 つのことを実行できるようにしたいと考えています。

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

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

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

4

6 に答える 6

82

より良いヘルプを得るために、送信ボタンの 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>

于 2012-10-17T23:27:53.293 に答える
13

データを送信する前に何かを行う必要がある場合は、フォームのonsubmitを使用できます。

<form method=post onsubmit="return doSomething()">
  <input type=text name=text1>
  <input type=submit>
</form>
于 2012-10-17T22:51:06.600 に答える
3

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

<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>

于 2015-03-31T21:45:55.853 に答える
2
  1. id="hiddenBtn"とを使用して非表示のボタンを作成type="submit"し、送信を行います
  2. 現在のボタンをに変更type="button"
  3. onclick現在のボタン呼び出しのセットは、次のfunctionようになります。
function foo() {
    // do something before submit
    ...
    // trigger click event of the hidden button
    $('#hinddenBtn').trigger("click");
}
于 2017-07-13T08:47:11.080 に答える