检查是否使用jQuery设置了请求属性
check if request attribute is set with jQuery
是否可以检查请求对象中是否存在属性?我有一些错误情况,其中错误消息必须传递到客户端:
Servlet代码:
request.setAttribute("error", "The following term was not found in the index: " + terms);
RequestDispatcher dispatcher = request.getRequestDispatcher("graph.jsp");
dispatcher.forward(request, response);
我试过这样做,但我根本没有收到警报窗口。。。
JSP代码:
<script>
var test = "${error}";
if(test != null)
alert(test);
</script>
如果我没有看错,您有一个JSP应用程序输出这个JavaScript。换句话说,JSP页面将变量error设置为字符串值。然后,它用于生成JavaScript,以便提醒错误变量的内容。
您的JS代码通常是正确的。有几件事对我来说很突出:
1) 将语言属性添加到脚本标记(如下所示)
<script language="javascript">
var test = "${error}";
if(test != null)
alert(test);
</script>
2) 检查浏览器中的错误
我测试了您在这里的代码,当错误值类似于"helloworld"时,它对我有效。测试变量设置为这样。字符串不等于null(尽管空字符串也不等于null,所以if语句有点无用)。这让我想到,也许你从${error}输出的字符串中可能有一个双引号
假设您的错误是:在索引中找不到以下术语:"鳄梨"。
您生成的JS将如下所示:
<script language="javascript">
var test = "The following term was not found in the index: "avocado"";
if(test != null)
alert(test);
</script>
注意双引号字符串中的双引号。这是一个语法错误。
如果您正在使用chrome,请打开开发人员工具(查看>开发人员>控制台)。重新加载页面。您是否看到报告的错误消息?如果是,错误是什么?如果没有,请查看您的源代码并查看生成的JS,然后将其发布在此处进行仔细检查。
在您的情况下,您应该检查是否为空,但不要检查是否为null。if(test != "")
相关文章:
- 哪个 JavaScript 库在请求对象上设置 _parsedUrl 属性
- Ember:当子控制器同时观察到父控制器触发请求的相同属性时
- 错误:在 Firefox 中访问 AJAX 请求的属性“nodeType”的权限被拒绝
- 使用Javascript重定向并设置请求属性
- 尝试更改HTML属性时出现奇怪的get请求
- 如何在JavaScript中将JSP请求属性转换为字符串并将其分配给对象
- 在提交表格时IE8赢得了't将来自输入的属性以外的属性添加到请求中
- 如何在 ajax 请求的回调中设置 ngInclude 元素的 src 属性
- 从 XMLHttpRequest 对象获取请求属性
- Drupal 7 Field API:如何以编程方式发送表单元素属性 #ajax 指定的AJAX请求
- 在 Laravel 5.2 的发布请求中传递 Algolia id 属性而不是 Name Atributre
- 来自 jsp 和 javascript 中的请求属性的对象索引数组
- 当对服务器的 ajax 请求失败时如何使用 defaults 属性
- 从数据属性动态获取 JQuery Ajax 请求的 URL
- Javascript/JQuery:设置一个请求属性
- 在JavaScript中获取请求属性
- 覆盖自动计算的TileWMS请求属性在开放层3
- 检查是否使用jQuery设置了请求属性
- jQuery JavaScript请求属性
- 通过请求属性访问存储在var中的列表元素