小编Sac*_*dha的帖子

输入元素上的javascript更改事件仅在失去焦点时触发

我有一个输入元素,我想继续检查内容的长度,每当长度变得等于特定大小时,我想启用提交按钮,但我遇到的问题是javascript的onchange事件作为事件仅当输入元素超出范围而不是内容更改时才触发.

__CODE__

---- onchange不会在更改名称内容时触发,但仅在名称失焦时触发.

我能做些什么来使这个事件能够改变内容吗?还是我可以使用的其他事件?我通过使用onkeyup函数找到了一种解决方法,但是当我们从浏览器的自动完成程序中选择一些内容时,这并没有触发.

我希望通过键盘或鼠标来改变字段内容时可以使用的东西...任何想法?

javascript jquery dom-events

73
推荐指数
3
解决办法
7万
查看次数

Struts 2 拦截器中的会话

我试图通过实现SessionAware接口(我已经实现了该setSession方法)从拦截器内访问会话对象,但我无法以这种方式获取会话对象。

然后我尝试ActionContext.getContext().getSession()并且能够获得会话,但我不知道,但它在每个用户的每个浏览器中第一次都是空的,然后当调用另一个操作时它会被填充。

我认为会议出了问题。为什么它只是第一次给我一个空会话?它是否仅在第一次提供空会话后才设置某些内容?

如果是这种情况,那么每个人都会在第一次请求时显示为访客,然后在第二次请求时显示用户名,如此下去。

或者我以错误的方式获得会议?

我看到了在拦截器中获取会话的代码,但这对我不起作用,因为它找不到常量HTTP_REQUEST

final ActionContext context = invocation.getInvocationContext();

HttpServletRequest request = (HttpServletRequest) context.get(HTTP_REQUEST);

HttpSession session = request.getSession(true);

Object user = session.getAttribute(Constants.USER_HANDLE);
Run Code Online (Sandbox Code Playgroud)

对于解决任何问题有什么建议吗?

我忘了提一下 - 我的网站是一个安全网站(https),所以如果用户没有登录,它不会让他进入网站,如果他登录了,至少他的用户名应该在会话中。难道不应该吗?

struts2 struts2-interceptors

5
推荐指数
1
解决办法
1万
查看次数