当前位置: 首页 > 知识库问答 >
问题:

尝试从数据库(MVC Web Api)创建包含问题和答案的常见问题解答

祁柏
2023-03-14

我正在尝试使用web API创建常见问题解答解决方案。我正在从数据库中获取问题和答案。我只希望在单击实际问题时显示问题和答案。

我现在得到的只是每一个问题和答案。

这是我从数据库中获取问题的功能:

        function ShowAllFaqs(faqs) {
        var strResult = "<table class='table table-boarded'>";
        $.each(faqs, function (i, p) {
            strResult += "<tr><td>" + p.Question+ "</td></tr>";
            strResult += "<tr><td>" + p.Answer+ "</td><td>" + p.Likes + "</td></tr>";
        });
        strResult += "</table>";
        $("#faqs").html(strResult);
    }

它们出现在这个分区中:

    <div class="container-fluid">
    <h3>FAQs</h3>
    <div id="faqs"></div>
</div>

这就是我试图实现的,我想做这样的东西,只显示问题,当问题扩展时显示答案?任何人都知道如何在没有新视角的情况下寻找答案

这是我现在的索引

数据库表

更新:

现在我有了这个视图,有没有可能在单击之前隐藏-元素,然后为每个元素显示底层?

现在有这个吗

表中从数据库显示的代码。

        function ShowAllFaqs(faqs) {
        var strResult = "<table class='table table-boarded'>";
        $.each(faqs, function (i, p) {
            strResult += "<tr><th>" + p.Question+ "</th></tr>";
            strResult += "<td>" + p.Answer+ "</td>";
            strResult += "<tr><td>" + "Did this answer you question?" + "</td><tr>";
        });
        strResult += "</table>";
        $("#faqs").html(strResult);
    }

共有1个答案

姜乐家
2023-03-14

有几种方法来回答这个需要,最简单的是使用DataGrid,它可以在主/细节模式下管理显示。这里有一个建议,在点击对应于问题的按钮时在新页面中显示答案。

索引视图中的Javascript代码

<script type="text/javascript">
   function ShowAllFaqs(faqs) {
   var strResult = "<table class='table table-boarded'>";
   $.each(faqs, function (i, p) {
   strResult += "<tr><td>" + p.Question+ "</td></tr>";
   strResult += "<tr><td>" + p.Answer+ "</td><td>" + p.Likes + "</td></tr>";
   strResult += "<tr>
            <td> <button type'button' value='Show Answer' onclick='fnGetAnswer('@p.id'); return false;'></button> </td>
            <td></td>
        </tr>";   
    });

    strResult += "</table>";
    $("#faqs").html(strResult);

    function fnGetAnswer(idQuestion) {
       window.location.href = '/Answers/GetAnswer?id=' + idQuestion;
       return false;
    }
</script>

答案是什么

@model FAQ.Models.AnswerModel

@{
   ViewBag.Title = "Answers";
   Layout = "~/Views/Shared/_Layout.cshtml";
}

<body>
    <table class="table">
    <tr>
        <th>
         @Html.DisplayNameFor(model => model.First().NumAnswer)
        </th>
        <th>
         @Html.DisplayNameFor(model => model.First().Anwser)
        </th>
    </tr>
        @foreach (var item in Model)
        {
            <tr>
                <td>
                    @Html.DisplayFor(modelItem => item.NumAnswer)
                </td>
                <td>
                    @Html.DisplayFor(modelItem => item.Anwser)
                </td>
            </tr>
         }
    </table>                     
</body>

答案控制器

public ActionResult GetAnswer(string NumQuestion)
{
    AnswerModel answerModel = GetAnswers (NumQuestion);
    return View(answerModel);
}

诚挚

 类似资料:
  • 问1:INSERT/UPDATE/DELETE被解析为Query或DDL语句? 答1: 出现这类情况主要原因为收到的binlog就为Query事件,比如: binlog格式为非row模式,通过show variables like 'binlog_format'可以查看. 针对statement/mixed模式,DML语句都会是以SQL语句存在 mysql5.6+之后,在binlog为row模式下

  • 本页面罗列了大家使用 YApi 时遇到的常见问题. 如果没有找到您要的答案,请联系管理员. Q1 怎样联系组长? 组长分为 分组组长 和 项目组长: 分组组长:选择首页左侧的分组,点击右侧面板的 成员列表,成员右侧显示着 组长/开发者 的权限信息。 项目组长: 点击项目页的 设置 - 成员列表,成员右侧显示着 组长/开发者 的权限信息。 Q2 怎么快速迁移旧项目? 第一步. 使用 Chrome 浏

  • 译者:冯宝宝 我的模型报告“cuda runtime error(2): out of memory” 正如错误消息所示,您的GPU显存已耗尽。由于经常在PyTorch中处理大量数据,因此小错误会迅速导致程序耗尽所有GPU资源; 幸运的是,这些情况下的修复通常很简单。这里有一些常见点需要检查: 不要在训练循环中积累历史记录。 默认情况下,涉及需要梯度计算的变量将保留历史记录。这意味着您应该避免在计

  • 版本 Unity2018.3以上需要用最新ILRuntime。 最新的发布版本为V2.0,Unity2018以上可通过Package Manager方式安装 V1.4已过时,示例工程内的版本已过时,当前最新版本为master分支。 ILRuntime的性能到底怎么样 最新版ILRuntime在若干若干测试用例中,包括大规模数值计算的场景,均已超过Lua53版xlua,详细测试可参考 U3D Dem

  • 1.Q:导出的PPT是否支持动态图表?做的图表能否动态导入PPT或word中? A:不支持, 动态交互性图表是由代码组成,浏览器内核才能解析。图表秀有office插件,可以支持PPT中插入动态图表,可以参考帮助文档“如何在PPT中插入图表”。 2.Q:图表的颜色能否修改? A:在图表编辑工具中可以设置单个图表的颜色。在图册中图表颜色是在主题色系中,通过切换系统主题或者自定义主题就可以修改图表颜色。

  • 小组面试可能会有压力,但在很多方面,就你将被问到什么问题以及如何回答而言,它们就像任何其他面对面的工作面试一样。 接下来,我将分享您的小组面试中最期待的问题。 然后,我将分享在您的小组面试中提出的最佳问题,以给人留下深刻的印象,并在您的求职中更快地被录用。 让我们开始吧… 常见的小组面试问题和答案: 首先,什么是小组面试?这是一次面对面的面试,您同时与公司的多个人坐在一个房间里,而不是与每个人一对