struts2 遍历list并ajax提交radio 如何用jquery取得当前点击提交的对象的id和radio值

发布于 2021-11-16 20:11:55 字数 5068 浏览 755 评论 2

我只能实现点击提交用提交第一个点击对象的id和radio值

这有完成的jsp页面代码:

<div class="content_list">
   <ol>
     <s:iterator value="map" id="map" status="map">
     <li class="zhechang">
    <a href="#" onclick="showCon(this);"><s:property value="key.question"/></a>
    <div class="faq_list">
     <div class="faq_content">
    <h3 class="h3_title"><s:property value="key.question"/></h3>
    <div class="contents">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<s:property value="key.answer"/></div>
    </div>
    <div id="show_question">
  <s:form >
     <input type="hidden" id="faqId" value="<s:property value="key.id"/>" name="<s:property value="key.id"/>"/>
     <span onclick="choise_check('q1')">
     <p>以上信息是否已解决您的问题?</p>
     <p class="faq_selcet">
    <input type="radio" checked="true" name="q1" value="Y" id="q1"/> 是
    &nbsp;&nbsp;&nbsp;&nbsp;
    <input type="radio" name="q1" value="N"/> 否
    <select gtbfieldid="4" name="q1b" id="q1b" style="display: none;" class="input_text">
      <option value="9999">请选择原因...</option>
     <option value="5">解决方法无效</option>
                        <option value="6">内容不清晰</option>
                        <option value="7">不是我想了解的问题</option>
                        <option value="8">内容不正确</option>
                        <option value="9">其他</option>  
                        <option value="10">ok</option>  
    </select>
    </p>
    <p class="input">
     <input type="hidden" id="input" value="<s:property value="#map.index"/>" name="input"/>
    <input type="button" value="提&nbsp;交" class="btn_blue_x" onclick="do_submit(this)"/>
    </p>
      <span onclick="choise_check('q1')"/>
      </span>
  </s:form>
  </div>
               <div style="display: none;" id="show_done" class="faq_content_add">
                        <h5 class="font_weight">提交成功!</h5></br>
                        <p>非常感谢您的评价。我们会根据您的评价进行完善。</p></br>
               <p>以上信息不能解决您的问题请<a href="${imgPath}/web/questionWebAction!index"><span class="highlight">点击这里</span></a>留言提问。</p>
               </div>
   <div class="faq_content_add">
   <h3>相关问题</h3>
   <div class="faq_other">
    <s:iterator value="value" status="st" id="relatefaq">
      <p><a href="#"><s:property value="#st.index+1"/>.<s:property value="question"/></a></p>
    </s:iterator>
   </div>
    </div>
     </div>
   </li>
     </s:iterator>
  </ol>
  <div style="float:right">
  <s:include value="faqlistpageChanger.jsp"></s:include>
  </div>
  <div class="clear"></div>
 </div>

jquery代码如下:
function choise_check(qid) {
 var a =getRadioNumber(qid);
 alert(a);
    if (getRadioValue(qid) == 'N') {
        document.getElementById("q1b")[a].style.display = '';
    }
    else {
        document.getElementById("q1b")[a].style.display = 'none';
    }
    return true;
}

function getRadioValue(qname) {
    var rs = document.getElementsByName(qname);
    for (var i = 0; i < rs.length; i++) {
        if (rs[i].checked) {
            return rs[i].value;
        }
    }
}

function setRadioValue(qname, cvalue) {
    var rs = document.getElementsByName(qname);
    if (cvalue > rs.length) {
        return;
    }
    else {
        rs[cvalue - 1].checked = true;
    }
}
function IsSeleRadio(bname) {
    var bn = document.getElementsByName(bname);
    var k = 0;
    var i;
    for (i = 0; i < bn.length; i++) {
        if (!bn[i].checked) {
            k++;
        }
    }
    if (k == bn.length) {
        return false;
    }
    else {
        return true;
    }
}
function checkInput() {
    if (!IsSeleRadio("q1")) {
        return false;
    }
    return true;
}

function do_submit(obj) {
    if (false == checkInput()) {
        return false;
    }
    var c1 = getRadioValue("q1");
    var c2 ='9999';
    if (c1 == 'N') {
        c2 = document.getElementById("q1b").value;
    }
    c2 = c1 == 'Y' ? '10' : c2;
    faqid = document.getElementById("faqId").value;
    if (c2 == '9999') {
    alert("请您先选择原因再提交,谢谢!");
        return true;
    }
    $.ajax({
        type: "GET",
        url: "/helpcenter/web/faqWebAction!addcomment",
        data:  "comment.fromSite=web&comment.commentTypeId=" + c2 + "&comment.faqId=" + faqid,
        success: function(msg) {
            document.getElementById("show_done").style.display = 'block';
            document.getElementById("show_question").style.display = 'none';
        }
    });
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

彼岸花ソ最美的依靠 2021-11-17 23:33:23

我还需要拿到 radio前面隐藏的那个 input中的id、

反目相谮 2021-11-17 16:34:33

$("input[name='q1']:checked").val(); 

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文