Java 无法将文本框值检索到JS

Java 无法将文本框值检索到JS,java,javascript,jquery,jquery-validate,Java,Javascript,Jquery,Jquery Validate,我在一个输入用户名的JSP页面中有一个文本框。然后我有另一个“设置”页面,其中有“更改密码”链接,我必须在其中验证用户名和密码(密码不应与用户名相同)。但是更改密码的lightbox只包含旧密码,newpassword和confirmpassword字段..我正在用JS编写一个小函数来验证,但用户名的值直到JS才达到..如何做到这一点???请帮忙 我的管理页面 function newcheckUsernamAndPassword(field, rules,i,options){

我在一个输入用户名的JSP页面中有一个文本框。然后我有另一个“设置”页面,其中有“更改密码”链接,我必须在其中验证用户名和密码(密码不应与用户名相同)。但是更改密码的lightbox只包含旧密码,newpassword和confirmpassword字段..我正在用JS编写一个小函数来验证,但用户名的值直到JS才达到..如何做到这一点???请帮忙

我的管理页面

function newcheckUsernamAndPassword(field, rules,i,options){
        alert("i am  in new method");
        var newpassword=field.val().toLowerCase();
        alert("new pas" +newpassword);
        var username='<%=Session("username")%>'
        alert(username);
//      var username = getValueUsingElementID('username').toLowerCase();
//      alert("Username"+username);
        if(newpassword==username){
            return options.allrules.changepassword.alertText;
        }


    }
函数newcheckUsernamAndPassword(字段、规则、i、选项){
警惕(“我采用了新方法”);
var newpassword=field.val().toLowerCase();
警报(“新pas”+新密码);
变量用户名=“”
警报(用户名);
//var username=getValueUsingElementID('username')。toLowerCase();
//警报(“用户名”+用户名);
if(newpassword==用户名){
返回options.allrules.changepassword.alertText;
}
}
更改密码的网页代码

> <input type="password" style="width:150px" id="oldpassword" class="
> textBox validate[required,funcCall[checkOldpassword]"
> onfocus="jQuery('#authenticateform').validationEngine('attach',{Overflown:false})"/></td>
>         </tr>
>         <tr>
>             <td class="login"><label class="textLable"><msg:message
> code="label.newpassword" /></label><span
> class="redStar">*</span>&nbsp;</td>
>             <td class="login"><input type="password"
> style="width:150px" id="newpassword" name="newpassword" class="textBox
> validate[required,maxSize[30],funcCall[checkOldAndNewPassword],funcCall[newcheckUsernamAndPassword],funcCall[validatePasswordCriteria]]"
>             
> onfocus="jQuery('#authenticateform').validationEngine('attach',{Overflown:false})"/></td>
>         </tr>
onfocus=“jQuery('#authenticateform').validationEngine('attach',{Overflown:false})”/> > > >code=“label.newpassword”/>class=“redStar”>* >style=“width:150px”id=“newpassword”name=“newpassword”class=“textBox” >验证[required,maxSize[30],funcCall[checkOldAndNewPassword],funcCall[newcheckUsernamAndPassword],funcCall[validatePasswordCriteria]] > >onfocus=“jQuery('#authenticateform').validationEngine('attach',{Overflown:false})”/> > 用户名的Myadmin页面

    <tr>
  <td class="tblComponent" width="120px" ><label class="tblLabel" for="username"><msg:message code="label.components.userid"/><span class="redStar">*</span></label></td>
  <td class="borderR tblComponent" width="120px" colspan="3"><input id="username" name="username" type="text" value="" onfocus="jQuery('#adduserform').validationEngine('attach',{Overflown:false})"/></td>

  </tr>

*
您好,,,有什么帮助吗?

我假设您的问题是,
'
没有被其预期的会话值替换

如果这个函数位于.js文件中,那么它可能只是由web服务器按原样提供服务


要了解我的意思,请尝试将此函数放在JSP页面(而不是.js文件)中,然后将正确解析
username
会话变量(假设它存在),并将其替换为预期值。

假设您正确地抓取了字段,例如

field = document.body.getElementById('the_id');
然后,您应该能够通过

var newpass = field.value;

除了js功能,你能从你的网页上发布一些代码吗?嗨…已经发布了代码,请你帮我看看已经给出的两个答案吗?