扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
普通的HTML select标签在显示的时候总是默认的显示第一个option value=""中所指示的值。
创新互联建站-专业网站定制、快速模板网站建设、高性价比二道江网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式二道江网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖二道江地区。费用合理售后完善,10余年实体公司更值得信赖。
只需要一个JS函数,就可以让它的默认值能够根据后台所传过来的参数不同而变化。
参考如下:
JSP文件:
body onload="checkModel()"
form action="%=request.getContextPath()%/secretboxInfoAction.do" method="post" name="ClientForm"
tr
td class="td"span class="font13b"型号:/span
select id="mod" style="width:115pt" name="model" value="" onkeydown="model_prompt_del()"
option value=""------请选择------
option value="转盘" 转盘
option value="密码" 密码
option value="金柜" 金柜
/select
span id="model_prompt" class="style1"*/spanhtml:errors property="model"/
/tr
/body
script type="text/javascript"
function checkModel() {
if("${secretboxInfo.model}"=="转盘"){
document.getElementById("mod").value="转盘";
} else if("${secretboxInfo.model}"=="密码"){
document.getElementById("mod").value="密码";
} else if("${secretboxInfo.model}"=="金柜"){
document.getElementById("mod").value="金柜";
} else{
document.getElementById("mod").value="";
}
}
/script
获取id ${user.id}
获取name ${user.name}
获取company ${user.company}
JS中直接从java后台获得对象的值(数组的值)
这里举得例子是:JS直接从后台Contorller中(SpringMVC中的model中)获得数值的值
Contorller 此处将 talentIntegralRecordsDay talentIntegralRecordsIntegral 两个数组用JSON.toJSONString()封装。
@SuppressWarnings("deprecation")
@RequestMapping("/integralParadise") public ModelAndView Welcome(HttpServletRequest request){
Users user = userService.currentUser(request);
user.getTalentUser().getIntegral();
System.out.println(user.getTime().getDate());
TalentIntegralRecord[] signInTalentIntegralRecords= wechatIntegralService.getUserSignInTalentIntegralRecords(user.getId()); int size = signInTalentIntegralRecords.length; int[] talentIntegralRecordsDay = new int[size];
Long[] talentIntegralRecordsIntegral = new Long[size]; for(int i=0;isignInTalentIntegralRecords.length;i++){
talentIntegralRecordsDay[i]=signInTalentIntegralRecords[i].getOperatorTime().getDate();
talentIntegralRecordsIntegral[i]=signInTalentIntegralRecords[i].getIntegral();
}
MapString,Object map = new HashMapString,Object();
map.put("talentIntegralRecordsDay", JSON.toJSONString(talentIntegralRecordsDay));
map.put("talentIntegralRecordsIntegral", JSON.toJSONString(talentIntegralRecordsIntegral)); return new ModelAndView("wechat/integralParadise/rili",map);
}
前台JSP 因为用到两个数组数据的JS代码为页面引用的JS代码所以要在页面中先声明获得后台两个数组(这段JS代码应在引用的JS文件前面)
script type="text/javascript"
$(document).ready(function(){
window.talentIntegralRecordsDay = ${talentIntegralRecordsDay};
window.talentIntegralRecordsIntegral = ${talentIntegralRecordsIntegral};
});/script
引用的JS文件 开始就获得了两个数组的值
$(function() { var signFun = function() {
var dateArray = window.talentIntegralRecordsDay;// 假设已经签到的
var talentIntegralRecordsIntegral = window.talentIntegralRecordsIntegral; var $dateBox = $("#js-qiandao-list"),
$currentDate = $(".current-date"),
$qiandaoBnt = $("#js-just-qiandao"),
_html = '',
_handle = true,
myDate = new Date();
$currentDate.text(myDate.getFullYear() + '年' + parseInt(myDate.getMonth() + 1) + '月' + myDate.getDate() + '日'); var monthFirst = new Date(myDate.getFullYear(), parseInt(myDate.getMonth()), 1).getDay(); var d = new Date(myDate.getFullYear(), parseInt(myDate.getMonth() + 1), 0); var totalDay = d.getDate(); //获取当前月的天数
for (var i = 0; i 42; i++) {
_html += ' lidiv class="qiandao-icon"/div/li'
}
$dateBox.html(_html) //生成日历网格
var $dateLi = $dateBox.find("li"); for (var i = 0; i totalDay; i++) {
$dateLi.eq(i + monthFirst).addClass("date" + parseInt(i + 1)); for (var j = 0; j dateArray.length; j++) { if (i == dateArray[j]) {
$dateLi.eq(i).addClass("qiandao"); var integral; if(talentIntegralRecordsIntegral[j]==0){
integral="大转盘";
}else{
integral="+"+talentIntegralRecordsIntegral[j];
}
$dateLi.eq(i).find("div").text(integral);
}
}
} //生成当月的日历且含已签到
$(".date" + myDate.getDate()).addClass('able-qiandao');
$dateBox.on("click", "li", function() { if ($(this).hasClass('able-qiandao') _handle) {
$(this).addClass('qiandao');
qiandaoFun();
}
你可以这样,在页面上放一个textbox,id=txtChoujiang属性值设置为style=display:none,
然后抽奖的结果假如走的是
case 1:
rotateFunc(1, 87, '恭喜您,本次订单减单 em1/em 元');
$("txtChoujiang").val("1");
break;
这样的话,你页面上的textbox 就有值了,然后,你在.cs的文件里就能获取到抽奖的结果了。
这个要看rotataFunc(a,b,str){}是怎么定义的,看函数名似乎与角度有关?
---
一二三四等奖每个都是七分之一的概率,这个略扯淡
js用向后端发送请求,然后后端通过一些算法计算出要中的奖项或者旋转的角度,返回到前端,js根据返回的奖项或者旋转的角度,来决定最终停止的位置。
中奖几率基本不写在js里,因为js可以被破解和修改,都是写在后端的。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流