繁体   English   中英

将JSON值从JavaScript传递到JSP

[英]Pass JSON value from JavaScript to JSP

我正在编写一个代码,以从javascript到我的JSP获取JSON值。 JSON值是一个布尔值,因此我可以在JSP脚本中使用if / else。 我有两个JavaScript文件和一个JSP。

Widget.js

initialize: function(conf){
  _Widget.prototype.initialize.call(this);
  _.bindAll(this, 'render', 'onPChange', 'applyInfo');
  this.listenTo(this.model, 'sync', this.render);
  this.listenTo(this.model, 'error', this.handleError);
  conf.getBus().on('/p'. this.onPChange);
  return this;
},
serializeData: function(model){
  return _.extend({}, this.resStr, model.attributes);
}
render: function(model, resp, options){
  var data;
  f = JSON.stringify(data.sFund);
  console.log("Result value: " + f);
}

index.js

$('#wgtWidget').objFactory(this.classes, this.wgts, this.mdls, conf);
this.mdls['wgtWidget'].render();

Portlet.jsp

<div data-wgt='Widget' data-model='Model' id='wgtWidget' class='model'></div>
<script>
  var f;
  console.log("Returned JSON value: " + f);
  if(f==true)
     console.log("Success");
</script>

我仔细研究了javascript文件,制作了一个缩小的main.js文件。 当我尝试提交上述代码时,我得到

conf.getBus is not defined 

错误,而我得到的日志为:

Result value: true
Returned JSON value: undefined

如果我将JSP更改为:

Portlet.jsp

<!-- <div data-wgt='Widget' data-model='Model' id='wgtWidget' class='model'></div> -->
<script>
  var f;
  console.log("Returned JSON value: " + f);
  if(f==true)
     console.log("Success");
</script>

现在我得到:

this.mdls.wgtWidget is not defined

并且没有其他日志。

我试图删除线

this.mdls['wgtWidget'].render(); 

来自index.js代码。 这使得页面加载没有错误,但没有其他日志。

您能帮我解决这个问题吗? 我正在努力寻找3天后的答案。

谢谢。

通过大量的时间和工作,我了解到价值并没有如原样传递。 我刚刚删除了a.getBus(); 来自Widget.js,这些东西就像奇迹一样。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM