【问题标题】:Beginner: Multiple Choice Quiz初学者:多项选择测验
【发布时间】:2019-03-04 22:12:44
【问题描述】:

我是初学者。我正在做一个多项选择测验。当用户提交答案时,我希望 ALL 我的按钮的结果显示在我的标签中。 我该怎么做?

  • (2 个问题)4 个单选按钮
  • 1 下拉菜单 (ID="DropDownList1")
  • 1 个复选框 (ID="CheckBoxList1")
  • 1 反馈/ShortAnswer 文本框

  • 提交按钮

  • 结果标签

基本上我希望它像这样显示:

结果:

你答对了 2 个问题

  • 问题1正确
  • 问题 2 不正确。正确答案是真。
  • 问题 3 正确

我喜欢苹果,因为它们对你的健康有益。

代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Text;
using System.Web.UI.WebControls;

namespace Project4
{
    public partial class Project4 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }


        protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

        protected void CheckBoxList1_SelectedIndexChanged(object sender, EventArgs e)
        {

        }


        protected void ClickHereForMore_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("https://my.sunysuffolk.edu/web/home-community/activities-information");
        }


        protected void SubmitButton_Click(object sender, ImageClickEventArgs e)
        {

            if (RadioButtonTrue.Checked)
            {
                lblResults.Text = "Question 1 is Correct";
            }
            else if (RadioButtonFalse.Checked)
            {
                lblResults.Text = "Question 1 is False. Correct answer is True.";
            }
            if (RadioButtonYes.Checked)
            {
                lblResults.Text = "Question 2 is Correct";
            }
            else if (RadioButtonNo.Checked)
            {
                lblResults.Text = "Question 2 is False. Correct answer is True.";
            }





        }

        protected void FeedBack_TextChanged(object sender, EventArgs e)
        {
            lblResults.Text = FeedBack.Text;

        }


    }
}

我现在的一个问题是 RadioButton 只显示问题 2 的结果。我想我知道为什么,但我不知道如何解决它,以便它同时显示问题 1 和 2 的答案。当我尝试对其他按钮执行相同操作时,我只能想象这个问题会变得更大。也没有显示反馈文本。

【问题讨论】:

  • 提示:+= 添加到已经存在的文本中。

标签: c# asp.net webforms


【解决方案1】:

对于lblResults.Text = "Question 2 is Correct";,您需要附加文本。就目前而言,您正在替换它。

改用以下内容,注意+= 附加字符串:

if (RadioButtonYes.Checked)
{
   lblResults.Text += "<br>Question 2 is Correct";
}
else if (RadioButtonNo.Checked)
{
   lblResults.Text += "<br>Question 2 is False. Correct answer is True.";
}

【讨论】:

  • 别忘了换行符\n
  • 对于新行我需要使用“
  • &lt;br&gt; 是 HTML5 的首选,请参阅 stackoverflow.com/a/1946446/4665 。不过&lt;br /&gt; 是可以接受的。
  • 谢谢你,这个链接很有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-12-31
  • 2016-07-09
  • 2021-12-05
  • 2022-12-10
  • 1970-01-01
  • 1970-01-01
  • 2014-11-04
相关资源
最近更新 更多