1

これが「はぁ、もう一つ~」の質問のように思われたら大変申し訳ありませんが、私は広範囲に調べましたが、私のニーズに合ったものはありませんでした. 私はハングマンのようなゲームを見てきましたが、彼らは一字一句それをやったので、コードをどうするかわかりませんでした。(私の無能さは認めます。私の知識はかなり限られています)

そこでクイズを見てみることにしましたが、ラジオボタンしか扱っていないようでした。入力タイプのテキスト ボックスが含まれるようにスクリプトを編集しようとしましたが、質問を多肢選択式から自由回答式に変更したため、さらに多くの問題が発生するようでした。

私が本当に欲しいのは、次のような基本的なセットアップだけです。

質問
入力ボックス
ボタン (送信、だと思いますか?)

これら3つのことだけで、美的に優れたものはありません。

概要: 質問に対する回答がたとえばバナナであるかどうかをコードで確認するにはどうすればよいですか? そして、単語が本当にバナナである場合にのみボタンを機能させるにはどうすればよいですか?

数日間検索した後、私は非常に迷っています。皆さんがこれに費やした努力に感謝します。それは私にとって大きな意味があります。

4

2 に答える 2

0

基本的に、送信ボタンを通常のボタンに変更し、javascript 関数を実行して、フォームを送信する前に値が正しいかどうかを確認します。何かのようなもの:

<script>
    function validate() {
        if (document.getElementById('check_value').value == 'banana') {
            document.getElementById('myForm').submit();
        }
        else {
            alert("Incorrect value.");
        }
    }
</script>
<form id='myForm' method='POST' action='process.php'>
    <input type='text' id='check_value' />
    <input type='button' value='Submit' onclick='validate();' />
</form>

それが役立つことを願っています。

于 2012-08-10T13:20:53.627 に答える
-2

これは、javascript を使用した基本的なクライアント側スクリプトです。

このonkeyupイベントを使用して、ユーザーがテキスト ボックスに入力した値をテストし、それを「正しい」値と比較して、その評価に基づいて送信ボタンを有効または無効にすることができます。

<div id="question">How do you spell "banana"?</div><br />
<form action="" method="post">
    <input type="text" name="answer" id="answer" /><br />
    <input type="submit" id="submit" disabled="true" />
</form>

<script type="text/javascript" language="javascript">
    $("#answer").on('keyup', function() { 
        if ($(this).val() == "banana") {
            $("#submit").removeAttr("disabled");
        } else {
            $("#submit").attr("disabled", "true");
        }
    });
</script>

他の人が指摘しているように、ユーザーがジャークでJavaScriptを無効にしている場合に備えて、サーバー側で入力を確認する必要があります。

<?php

    if ($_POST['answer'] == "banana") {
        // we're OK, do something
    } else {
        // return to the form and let the user know he's a cheater!
    }
于 2012-08-10T13:19:54.227 に答える