【问题标题】:How to identify the dynamic content (from oracle database) and insert into database using radio button?如何识别动态内容(来自 oracle 数据库)并使用单选按钮插入数据库?
【发布时间】:2012-06-04 08:09:36
【问题描述】:

我的 oracle 数据库由 4 个表组成。第一个表包含 QuestionId(Pk) 和问题, 第二个表包含 AnswerSuggestionID(Pk) 和 Suggestions,第三个表包含 categoryId(Pk) 和 Category,第四个表包含 displayid(pk)、QuestionId(fk)、AnserSuggetionId(fk) 和 categoryId。

我的jsp页面代码:

<tr>
 <td class="regis" valign="top"><%=qId %></td><td class="regist" valign="top">       <%=questions %></td>
 <td class="regis" valign="middle"><input type="radio" id="rname" name="<%=qId %>" value="yes" class="rsubmit" onclick="<%=qId %>()" /><span>Yes</span>&#160;&#160;&#160;&#160;<input type="radio" name="<%=qId %>" value="no" checked="checked" onclick="<%=questions %>()"/><span>No</span></td>
  <td>**onclick radio button yes then i have to display suggestions here without refresh the page.**</td>

注意: 有时一个问题会有 2 个或更多建议。 有时,超过 2 个问题的类别相同。 有时 2 个问题的答案是相同的。

感谢您的问候, 兰迪普

【问题讨论】:

    标签: javascript eclipse oracle jsp servlets


    【解决方案1】:

    我宁愿建议您使用链接或按钮而不是单选按钮来下载动态内容。无论如何,让我们继续使用“是”单选按钮的代码:

    <input type="radio" id="rname" name="<%=qId %>" value="yes" class="rsubmit" onclick="<%=qId %>()" /><span>Yes</span>
    

    第一件事:你不能在单选按钮的 onclick 属性中包含&lt;%=qId %&gt;()。您应该创建一个 Javascript 函数,例如 downloadContent(),并在此处传递它的引用。

    var downloadContent = function(question_id) {
        // your code goes in here
    };
    

    现在您应该将其引用到onclick 处理程序,如下所示:

    <input type="radio" id="rname" name="<%=qId %>" value="yes" class="rsubmit" onclick="downloadContent(<%=qId %>)" /><span>Yes</span>
    

    现在在downloadContent(),您可以进行AJAX 调用并以XML 或JSON 的形式从您的服务器下载相关数据。接下来,您将迭代这些数据并更新您的 DOM。使用普通的 Javascript 处理 AJAX 和 DOM 可能会很棘手,因此我强烈建议使用 jQuery 等框架。希望对您有所帮助。

    【讨论】:

    • 好的。但如果我使用 JavaScript,它就不能正常工作。 &lt;script type="text/javascript"&gt; var DisplayQuestId = function(&lt;%=qno %&gt;){ document.getElementById('&lt;%=sug1 %&gt;').style.display=""; } var DisplayQuest = function(&lt;%=questions %&gt;){ document.getElementById('&lt;%=sug1 %&gt;').style.display="none"; } &lt;/script&gt;
    • 无法使用您的 Javascript 进行操作。您永远不会像在 'var DisplayQuestId = function()' 中那样在函数定义中传递参数值。您可以定义函数参数,例如 'var DisplayQuestId = function(qno)'。
    • 嗨,questionId 是动态来自数据库的,并且对于每个 questionId 也会生成“是”和“否”按钮。所以如果我点击第一个问题的“是”按钮,那么它应该只显示第一个问题的建议(答案)。那么我将如何识别javascript中的问题ID?我将如何保留“功能(qno)”?
    • 嗨,如何获取特定 &lt;span&gt; 的 id? onclick 单选按钮该功能将像document.getElementById('xxx').style.display="none"; 一样工作,我应该给出什么而不是 xxx 来识别特定问题的建议(或答案)。注意:&lt;span&gt; 正在为每个问题动态创建。
    【解决方案2】:

    如果您可以有多个正确答案,从逻辑上讲,您不应该有单选按钮。

    其次,我建议有一个提交按钮。只有单击按钮才能提交表单并将数据保存到数据库中。

    【讨论】:

    • No no.. 如果您单击“是”按钮,则只会显示建议。同样,如果您单击“否”按钮,它将消失。我有一个提交按钮,用于将所有值一起插入。最后,如果您单击提交按钮,那么我只需要插入“是”的内容
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-10
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 2015-08-12
    相关资源
    最近更新 更多