2016-12-13 4 views
-5

入力ボタンが押されたときに送信されるテキストエリアがあります。私はデフォルトでチェックされるテキスト領域の外側にチェックボックスを持っています。私は、チェックボックスのチェックが外されたときに入力してフォーム提出を防止したいと思います。チェックボックスをオフにすると、送信プロセスのボタンが表示されます。チェックボックスをオフにした場合に送信ボタンを表示し、一度入力してから送信を許可しないようにします。

function readysubmit(){ 
 
    document.getElementById("submit").onclick=function(){ 
 
    location.href="www.google.com"; 
 
    } 
 
} 
 

 
$(document).onload(function(){ 
 
    readysubmit(); 
 
}) 
 

 
// show and hide sections of a form 
 
function preparePage() { 
 
    document.getElementById("chkbox").onclick = function() { 
 
    if (document.getElementById("chkbox").checked) { 
 
     document.getElementById("submit").style.display = "none"; 
 
    } else { 
 
     document.getElementById("submit").style.display = "inline-block"; 
 
    } 
 
    }; 
 
    document.getElementById("chkbox").checked ="true"; 
 
    document.getElementById("submit").style.display = "none"; 
 
} 
 

 
window.onload = function() { 
 
    preparePage(); 
 
};
<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
    <title>Textarea Submit</title> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
    </head> 
 
    <body style="text-align: justify;"> 
 
    <section> 
 
     <div id="divelement" style="border: solid black 0.1px; display: inline-block;"> 
 
     <form id="formelement"> 
 
      <textarea id="txtareaelemnt"> 
 
      </textarea> 
 
      <br/> 
 
      <input id="chkbox" type="checkbox" name="Pressentertosend">Press enter to send </input> 
 
     <button id="submit" name="Submit">Submit</button> 
 
     </form> 
 
     </div> 
 
    </section> 
 
    </script> 
 
</body> 
 
</html>

私は上記のコードを使用しています。ボタンを押すとstackoverflow.comのようなウェブページにリダイレクトしたいまた、チェックボックスのチェックを外すと、ボタンが表示されます。後者の場合は、送信ボタンが押されたときにのみテキストエリアを送信します。今すぐEnterボタンを押して再送信するべきではありません。それは、テキストエディタで見つけたリターンのように機能するはずです。

+1

?コードサンプルと具体的な質問が必要です。このWebサイトではコーディングサービスは提供されていません –

+1

コミュニティで問題をデバッグするのに役立つよう試したコードのサンプルを提供してください。残念ながら、コミュニティは要件に基づいてコードを書くことはありません。 –

+0

@ JohannKratzik、私はそれを編集して問題のコードを追加しました。私はそれの後に要件を追加しました。感謝@Namenone –

答えて

0

コードや明確な説明がなくても、正確に何が欲しいのか分かりにくいです。私はあなたがuntickedときに、ユーザーがテキストエリアで '入力'を押してフォームを送信することを許可しないチェックボックスが必要と仮定しています。

あなたが行う必要があるのは、チェックボックスの状態をチェックする関数を作成することです。

var ckbox = $('.checkbox_check'); 

$('input').on('click',function() { 
    if (ckbox.is(':checked')) { 
     alert('You have Checked it'); 
    } else { 
    alert('You have unchecked it'); 
    } 
}); 

これは、チェックボックスの状態をチェックし、その中に機能を追加できるようにします。私は次のやったことは関数にこれを追加押され、戻るボタンをチェックし、キーを押して機能(コード13である、あなたには、いくつかのグーグルをすることによって、このオンラインを見つけることができます)

$('#box_1').on('keyup keypress', function(e) { 
     var keyCode = e.keyCode || e.which; 
     if (keyCode === 13) { 
      e.preventDefault(); 
      alert("pressed enter!") 
      return false; 
     } 
     }); 

に動作します
var ckbox = $('.checkbox_check'); 

$('input').on('click',function() { 
    if (ckbox.is(':checked')) { 
     alert('You have Checked it'); 
    } else { 
    $('#box_1').on('keyup keypress', function(e) { 
     var keyCode = e.keyCode || e.which; 
     if (keyCode === 13) { 
      e.preventDefault(); 
      alert("pressed enter!") 
      return false; 
     } 
     }); 
    } 
}); 

の作業フィドル:あなたがこれまでに試してみました何https://jsfiddle.net/foy8t9ez/

+0

を助言してください。そのプロセスで私を助けて、他のページで私にリダイレクトすることができますか? JQueryも動作します。私は質問を編集しました。 –

関連する問題