我有一个场景,例如用户单击HTML页面上的超链接时,它必须使用ID(在超链接的OnClick方法中传递ID(并调用Java方法,并将其调用Java方法该方法接受ID参数。基于ID,它将某些值作为数组返回到JavaScript函数。
这是我的Java脚本函数
function showTestCaseReport(testCaseId, testSteps)
{
var jObject = Java.type('Practice.myclasses.GenerateReport');
var stepResult = jObject.getTestStepsByCaseId(testCaseId);
alert(stepResult.length);
}
,但是当单击超链接时,它不起作用,甚至不显示警报对话框。
有什么方法可以集成JavaScript函数和Java方法?
您需要将AJAX调用到执行Java函数的页面,然后将数据返回给JS
$.ajax({
url: "java_page.jsp",
data: ID
}).done(function(data) {
//Do what you need with data(your array) hear
});
ps。最好的做法是返回JSON格式数据,因此您的Java代码应返回JSON
html:
<a href="<c:url value="/test/${object.Id}" />" >Test</a>
在Java控制器中:
您必须使用@PathVariable
来通过ID。
@RequestMapping(value = "/test/{Id}", method = RequestMethod.GET)
public String Controller(@PathVariable("Id") String Id) {
...
}
您可以直接使用HREF与ID一起击中控制器。
如果您想通过JS Ajax击中Java控制器。在JS:AJAX调用
$.ajax({
type: "POST",
url: "test",
data: loginData,
success: function (result) {
// do something.
},
error: function (result) {
// do something.
}
});
希望这会有所帮助..!