2016-10-29 4 views
-2

こんにちは私はクリックしたときに送信入力を無効にできましたが、PHP ifissetを実行したときに問題が発生しました。しかし、私の研究の後にし、テストでは、フォームに入力されたデータをアップロードしませんが、ボタンが無効になりますが、私はjQueryのコードを削除したときにアクションが行われず、画像がそれをアップロードし、これは私のコードフォーム送信ボタンを無効にしてフォームデータをアップロードする方法

//input submit works if not disabled but does not run if disabled after onclick which i feel when the button is disabled the form submit has no name valid 
<script> 
$(function() { 
    $('#theform').submit(function() { 
    $("input[type='submit']", this) 
     .val("Please Wait...") 
     .attr('disabled', 'disabled'); 
    return true; 
    }); 
}); 
</script> 

//My form 
<form action="" method="post" role="form" id="theform" enctype="multipart/form-data"> 
    <input type="file" name="file"> 
    <input type="submit" name="sub" value="UPLOAD"> 
</form> 
+0

データベースに書き込むときに何か問題が発生したため、phpコードはどこにありますか? – jeff

+0

あなたの説明はちょっと混乱しています。あなたは、(a)JSなしのフォームは正常に動作し、ファイルはPHPによって保存されますが、(b)そのJSではボタンは無効になりフォームは送信されますが、 'file'パラメータはリクエストに含まれていません。それともリクエストに含まれていない 'name'パラメータですか?関連するPHPコードを表示するためにあなたの質問を編集してください。 – nnnnnn

+0

jsを削除するとPHPコードが正常に実行されるので、jqueryが入力ボタンを無効にしているので、ページをリロードしても@nnnnnnが処理されていない場合は名前をバインドできません。 – chiefo

答えて

0

です私が望むのは、値を2回送信しないようにすることです。

その場合には

、私は「送信」ボタンと、このようなsub値のために隠されたinputを使用するためのtype="button"を使用してイベントやフォームデータそのものを提出からボタンを離婚になります。

$(function() { 
 
    $('.submit').click(function(){ 
 
     $(this).prop("disabled",true).val("Please Wait...").closest('form').submit(); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form action="" method="post" role="form" id="theform" enctype="multipart/form-data"> 
 
    <input type="file" name="file"> 
 
    <input type="hidden" name="sub" value="UPLOAD"> 
 
    <input type="button" class="submit" value="UPLOAD"> 
 
</form>

関連する問題