亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

javascript - $.ajax({}) 能否在js函數中調用?

瀏覽:38日期:2023-03-23 10:47:50

問題描述

1.想做一個問卷調查。 頁面中有多個題目,每個題目下有多個選項,最后有一個提交按鈕,提交時判斷用戶是否登錄。題目和選項都是在jsp頁面中通過$.ajax從后臺動態獲取以html形式顯示在前臺。 現在提交時需要獲取選擇的項和題目將其存入后臺的數據庫中,以便后臺統計。

2.form表單

<form name='myform' method='post'> <p class='sub730'><p id='rightTitle'> <span>有獎調查</span></p><p id='contentp'> <p class='newsLeftLayoutOp sceneRightLayout'><p class='newsDetailContent'> <h2>${iyInvestigate.title}</h2> <p class='newsDetailConMsg'><span>發布時間:</span> <span>${iyInvestigate.createTime}</span> <span>活動結束時間:</span><span>${iyInvestigate.endtime}</span> </p> <p><span>${iyInvestigate.summary}</span> </p> <p class='test_content_nr'></p> <p class='col-lg-9 col-lg-offset-3'> <a href='javascript:void(0)' onclick='submitAnswer();'>提交</a> </p></p> </p></p> </p></p></form>

動態加載題目和選項

<script type='text/javascript'> $(document).ready(function(){ $.ajax({ type : 'post', dataType : 'json', url : '${ctx}/website/yjdc/investigate/findInvestigateOptionByPage.action', data : {'id':’${iyInvestigate.id}’}, success: function(rec){ var root = '${ctx}';var optionlist = rec.investigateOpList;var opHTML = ’<ul>’;for(var i = 0;i<optionlist.length;i++){ var option = optionlist[i];opHTML += ’<li name='optionTitle' id='qu_0_’+i+’'>’; opHTML += ’<p name='pOptionTitle' id='p_0_’+i+’'>’+ option.subject +’</p>’;opHTML += ’<p class='test_content_nr_main'>’; opHTML += ’<ul>’; var deoption = option.options; var deoptionsArr = new Array(); deoptionsArr = deoption.split('|'); //選項按照|分割開 for (var j = 0; j<deoptionsArr.length;j++){ opHTML += ’<li name='liSelect' class='option'>’;opHTML += ’<input name='answer’+i+’' type='radio'>’+deoptionsArr[j];//opHTML += ’<label for='0_answer_’+i+’_option_’+j+’'>’+’<p style='display: inline;'>’+deoptionsArr[j]+’</p>’+’</label>’;opHTML += ’</li>’; } opHTML += ’</ul>’; opHTML += ’</p>’; opHTML += ’</li>’;}opHTML += ’</ul>’;$(’#optionp’).html(opHTML); }}) });</script>

提交函數submitAnswer()

function submitAnswer(){ var userid = '${sessionScope.user.id}'; if(userid == ’’) {alert('未登錄,跳轉登錄頁面!');var dt = new Date();var urlRoot = window.location.pathname;var urlParameter = window.location.search;var url = urlRoot + urlParameter;window.location.href = 'http://www.aoyou183.cn/wenda/${pageContext.request.contextPath}/web/index/toLogin.action?url='+url+'&dt='+dt.getTime(); } else { var k = document.getElementById(’sub’).innerText; var investigateTitle = '${iyInvestigate.title}'; var indvestigateID = '${iyInvestigate.id}'; //獲取同一個主題活動下的題目集合 var subjectTitleCountObj = document.getElementsByName('pOptionTitle'); //var optionSelectCount = document.getElementsByName('liSelect').length;//獲取每一道題目以及相應的選項 for (var k=0;k < subjectTitleCountObj.length;k++){//ids = optionTitleCountObj[k].id;//存儲題目var subject = $('#p_0_'+ k).text();//var val_ = $(’input[type='radio'][name='answer’+k+’']:checked’).val();//存儲選中的項var selectItem = ''; var radios = document.getElementsByName('answer'+k);for (r = 0; r < radios.length;r++) { if (radios[r].checked) {selectItem = radios[r].nextSibling.data; }};$.ajax({ type : 'post', dataType : 'json', url : '${ctx}/website/yjdc/investigate/submitAnswer.action', data : {'investigateTitle': ${iyInvestigate.title},'investigateID':${iyInvestigate.id},'subjectOp':subject,'selectItemOp':selectItem,'userid':${sessionScope.user.id}}, success : function(rec){}});// for (var j=0; j<optionSelectCount;j++){// var select = $('#0_answer_'+k+'_option_'+j).text();// $('input:radio:checked').val();// } } }}</script>

3.現在的問題是在 function submitAnswer() {} 中加$.ajax({})根本進不了js函數submitAnswer。 去掉$.ajax({})才可以執行submitAnswer函數。

請各位大神指教。

問題解答

回答1:

將ajax中data參數下的值用單引號新起來就好了,見如下代碼data : {'investigateTitle': ’${iyInvestigate.title}’,'investigateID':’${iyInvestigate.id}’,'subjectOp':’subject’,'selectItemOp':’selectItem’,'userid':’${sessionScope.user.id}’},

回答2:

寫個 console.log 看看函數到底有沒有進去。

再者,你這個寫法:

<a href='javascript:void(0)' onclick='submitAnswer();'>提交</a>

為什么在 js 文件中綁定事件呢:

html

<a href='http://www.aoyou183.cn/wenda/4466.html#'>提交</a>

js

$(’#sub’).click(function(){ submitAnswer();});回答3:

你把你的submitAnswer()放到$(document).ready(function(){})試試

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产高清在线观看视频 | 这里是九九伊人 | 精品国产一区二区三区成人 | 国产综合久久久久久 | 久久久久久88色偷偷 | 亚洲第一免费视频 | 9966久久精品免费看国产 | 一级黄色欧美片 | 日韩高清在线免费观看 | 亚洲在线免费视频 | 又大又爽又湿又紧a视频 | jizz国产精品| 欧美性生活视频播放 | 一级a欧美毛片 | 99在线观看视频免费精品9 | 色婷婷亚洲精品综合影院 | 国产亚洲综合久久 | 欧美特级大片 | 免费成人福利视频 | 99九九99九九九视频精品 | 国产黄色片在线看 | 日本黄网址| 国产色窝 | 五月一区二区久久综合天堂 | 91久久免费视频 | 国产精品免费aⅴ片在线观看 | 久久精品视频亚洲 | 国产精品69白浆在线观看免费 | 窝窝午夜色视频国产精品东北 | 中文字幕日韩哦哦哦 | 欧美亚洲国产日韩一区二区三区 | 亚洲国产人久久久成人精品网站 | a级无毛片| 免费特黄级夫费生活片 | 欧美黑人成人www在线观看 | 国产成人爱片免费观看视频 | xxxxx亚洲| 免费视频观看在线www日本 | 一级一级女人真片 | 午夜影院一区二区 | 一区亚洲 |