我想使用Jquery为单独的http会话创建动态html内容。非常感谢您的支持。
//This is where I assign my array to a session attribute.
request.getSession().setAttribute("updateTable", game.getTableStatus());
我有这样的功能来创建3X3动态表,其值从数组传递。我在突出显示的行中使用的方式似乎是错误的。我可以建议您解决这个问题。
function writeTable() {
// declare html variable (a string holder):
var html = '';
for (var i = 0; i < 3; i++) {
// add opening <tr> tag to the string:
html += '<tr id="'i'">';
for (var j = 0; j < 3; j++) {
// add <td> elements to the string:
html += '<td id="'j'">' + **${sessionScope.updateTable[i][j]}** + '</td>';
count++;
}
// add closing </tr> tag to the string:
html += '</tr>';
}
//append created html to the table body:
$('#body').append(html);
// reset the count:
count = 0;
}
最后,是否可以将此表与AJAX集成,以便使用onClick()事件发回元素ID?
当它是一个静态表来满足AJAX要求时,我正在使用下面的代码。
$(document).ready(function(){
$("td").click(function(){
//$(this).attr('id');
$.ajax({
type: 'POST',
url: 'gameServlet',
data: { cellInfo: $(this).attr("id"), rowInfo: $(this).closest("tr").attr("id")},
success:
function(data, textStatus, jqXHR) {
//$(this).text("${sessionScope.mySign}");
},
error:
function(jqXHR, textStatus, errorThrown) {
$("#result").text(textStatus + ": Error");
},
dataType: 'text'
});
$(this).text("${sessionScope.mySign}");
});
});
非常感谢!
答案 0 :(得分:0)
for (var i = 0; i < 3; i++) {
// add opening <tr> tag to the string:
html += '<tr id="'+i+'">';
for (var j = 0; j < 3; j++) {
// add <td> elements to the string:
html += '<td id="'+j+'">${sessionScope.updateTable['+i+']['+j+']}</td>';
count++;
}
// add closing </tr> tag to the string:
html += '</tr>';
}
试试这段代码。
答案 1 :(得分:0)
还需要一些建议来通过JSP迭代我的数组: 当我直接调用$ {applicationScope.tableStatus [0] [0]}时,它返回正常,但无法用i和j进行迭代。
@RequestMapping(value="/{url}", method = RequestMethod.GET)
public ModelAndView method(@PathVariable("url") String url) {
String original = database.getLongUrl(UrlShortener.decode(url));
return new ModelAndView("redirect:" + original);
}
}