如何在js中接收后台传来的数组

如何在js中接收后台传来的数组,第1张

<!DOCTYPE html>  

<html xmlns=" >

获取name ${username}

获取company ${usercompany}

JS中直接从java后台获得对象的值(数组的值)

这里举得例子是:JS直接从后台Contorller中(SpringMVC中的model中)获得数值的值

Contorller 此处将 talentIntegralRecordsDay talentIntegralRecordsIntegral 两个数组用JSONtoJSONString()封装。

@SuppressWarnings("deprecation")

@RequestMapping("/integralParadise")    public ModelAndView Welcome(>

Users user = userServicecurrentUser(request);  

usergetTalentUser()getIntegral();

Systemoutprintln(usergetTime()getDate());

TalentIntegralRecord[] signInTalentIntegralRecords= wechatIntegralServicegetUserSignInTalentIntegralRecords(usergetId());        int size = signInTalentIntegralRecordslength;        int[] talentIntegralRecordsDay = new int[size];

Long[] talentIntegralRecordsIntegral = new Long[size];        for(int i=0;i<signInTalentIntegralRecordslength;i++){

talentIntegralRecordsDay[i]=signInTalentIntegralRecords[i]getOperatorTime()getDate();

talentIntegralRecordsIntegral[i]=signInTalentIntegralRecords[i]getIntegral();

}

Map<String,Object> map = new HashMap<String,Object>();

mapput("talentIntegralRecordsDay", JSONtoJSONString(talentIntegralRecordsDay));

mapput("talentIntegralRecordsIntegral", JSONtoJSONString(talentIntegralRecordsIntegral));        return new ModelAndView("wechat/integralParadise/rili",map);

}

前台JSP 因为用到两个数组数据的JS代码为页面引用的JS代码所以要在页面中先声明获得后台两个数组(这段JS代码应在引用的JS文件前面)

<script type="text/javascript">

$(document)ready(function(){

windowtalentIntegralRecordsDay = ${talentIntegralRecordsDay};

windowtalentIntegralRecordsIntegral = ${talentIntegralRecordsIntegral};

});</script>

引用的JS文件 开始就获得了两个数组的值

$(function() {    var signFun = function() {      

var dateArray = windowtalentIntegralRecordsDay;// 假设已经签到的

var talentIntegralRecordsIntegral = windowtalentIntegralRecordsIntegral;        var $dateBox = $("#js-qiandao-list"),

$currentDate = $("current-date"),

$qiandaoBnt = $("#js-just-qiandao"),

_html = '',

_handle = true,

myDate = new Date();

$currentDatetext(myDategetFullYear() + '年' + parseInt(myDategetMonth() + 1) + '月' + myDategetDate() + '日');        var monthFirst = new Date(myDategetFullYear(), parseInt(myDategetMonth()), 1)getDay();        var d = new Date(myDategetFullYear(), parseInt(myDategetMonth() + 1), 0);        var totalDay = dgetDate(); //获取当前月的天数

for (var i = 0; i < 42; i++) {

_html += ' <li><div class="qiandao-icon"></div></li>'

}

$dateBoxhtml(_html) //生成日历网格

var $dateLi = $dateBoxfind("li");        for (var i = 0; i < totalDay; i++) {

$dateLieq(i + monthFirst)addClass("date" + parseInt(i + 1));            for (var j = 0; j < dateArraylength; j++) {                if (i == dateArray[j]) {

$dateLieq(i)addClass("qiandao");                    var integral;                    if(talentIntegralRecordsIntegral[j]==0){

integral="大转盘";

}else{

integral="+"+talentIntegralRecordsIntegral[j];

}

$dateLieq(i)find("div")text(integral);

}

}

} //生成当月的日历且含已签到

$("date" + myDategetDate())addClass('able-qiandao');

$dateBoxon("click", "li", function() {                if ($(this)hasClass('able-qiandao') && _handle) {

$(this)addClass('qiandao');

qiandaoFun();

}

protected void SelectOne(string str) 

    { 

        string strs = "select  from MT_Product where P_Name like str"; 

        sqlProduct(strs); //此方法执行并返回结果 

    } 

前台js代码 

function Button2_onclick() { 

var TextBox1=documentgetElementById ('Text1')    //取出textbox里的内容 

if(TextBox1value=="") 

  alert('不能为空!'); 

  return false; 

else 

    <%=SelectOne(Text1Text) %>        //此处调用后台方法 

}

首先确定你后台传过来的str是你所说的那样

其次你js应该写成

var indexdata2 = <%=str %>;

去掉外边的双引号,因为你这个是js的数组,带双引号就是字符串了,所以你不能直接用

你也可以通过一般处理程序来做。

在js里分别获取两个text的值,在按钮的onclick事件下跳转到一般处理程序(getMessageashx)

string input1=contextrequestQueryString["input1"]tostring();

input2类似,然后再判断即可。

以上就是关于如何在js中接收后台传来的数组全部的内容,包括:如何在js中接收后台传来的数组、js怎样获得后台Model中的值、前台JS文件怎么调用后台一个方法并传递参数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9328045.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存