4

データベースからの 10 個の質問とタイマーを HTML フォームに配置したいと考えています。次のボタンをクリックすると質問が 1 つずつ表示され、次の質問が表示され、戻るボタンをクリックすると前の質問が表示されます

<form name="form1" bgcolor="red" action="resultbyme.jsp" method="POST">
    <div style="background-color:orange;"> 
        <% qno=n+1;
        ques=rs.getString(4);
        op1=rs.getString(5);
        op2=rs.getString(6);
        op3=rs.getString(7);
        op4=rs.getString(8);
        %>
        <br>Q.<%=qno%>--><%=ques%></br>
        <input type="radio" name="opt<%=qno%>" value="<%=op1%>" /><%=op1%><br>
        <input type="radio" name="opt" value="<%=op1%>" /><%=op2%><br>
        <input type="radio" name="opt" value="<%=op1%>" /><%=op3%><br>
        <input type="radio" name="opt" value="<%=op1%>" /><%=op4%><br>
        <%
            }
        } //end for
    }
    catch(SQLException e)
    {
        out.println("erorr in sql ") ;                        
    }
        %>
        <div bgcolor="blue"><input type="submit" value="submit" name="submit test" /></div>
    </div>
</form>
4

2 に答える 2

1

すべてを別の div にロードして、JavaScript で次々に表示できます。

于 2012-11-04T15:26:50.493 に答える
1

共通のヘッダーがあり、タイマーを処理します。ユーザーが次へまたは戻るをクリックすることに基づいて、html本文が動的に変更されます(これにはajaxを使用します)。

[次へ] ボタンと [戻る] ボタンで質問番号を非表示にすることをお勧めします。したがって、AJAX 呼び出しでは、質問番号を取得し、サーバーに渡してその特定の質問を取得できます。定義済みの span または div タグで表示できます。

  <div id="questionId"> My question is here  </div>

JavaScriptの内部

  function loadQuestion(questionNo){

    $.ajax({
     type: "POST",
      url: 'projectName/showQuestion.action',
      data: "quesionNo="+questionNo
      success: function(data) {

        document.getElementById('questionId').innerHTML =data;

      }
    });

 }

これは単なるガイドであり、アプローチに合わせて変更します

于 2012-11-04T15:51:51.610 に答える