SSH 注册 ajax验证ID重复 页面上js函数的问题 用了prototype.js和json
我是照书上的例子做的,在ID输入框失去焦点后调用js函数查询该ID是否存在,这个功能实现了.现在我想增加个功能就是如果ID存在,则提交按钮变灰,或者弹出警告ID已经存在,再把焦点返回到ID输入框中
由于我JS技术基本为零,不知道这几个函数怎么编写,所以来求助.
下面是我的JSP页面代码,略去了和问题无关的内容
<script src="prototype-1.6.0.3.js" type="text/javascript"></script>
<script src="json2.js" type="text/javascript"></script>
<script type="text/javascript">
function validateName() {
var url = "validateName";
var params = Form.Element.serialize("id");
var myAjax = new Ajax.Request(
url,
{
method:"post",
parameters:params,
onComplete:processResponse,
asynchronous:true
});
}
function processResponse(request) {
var action = JSON.parse(request.responseText);
$("tip").innerHTML = action.tip;
}
</script>
<script type="text/javascript">
function refresh() {
}
</script>
</head>
<body>
<center>
<h3>添加人员信息</h3>
<hr/>
<s:actionerror />
<span id="tip" style="color:red;font-weight:bold"></span>
<s:form name="form" id="form" action="add" validate="true" onsubmit="return check();">
<s:textfield name="person.id" label="ID" id="id" onblur="validateName();"/>
<s:submit value="提交" />
</s:form>
我在validateName()函数对应的action设置了响应的两个属性, String tip 设置提示信息, Boolean flag 表示查询结果是或否
我的思路是在<s:form>上添加onsubmit"return check();" 这样一个函数,或者在<s:submit>上添加onclick"return check()" 效果应该是一样的,这个check函数根据上面提到的flag来确定是或否,问题就在于我不知道如何写这个check()函数.换句话说如何在check()里调用validateName(),没有JSP基础的我实在力不从心,而原有例子是使用prototype.js和json两个工具的,我对这些都不熟悉
我尝试这样写
"java"
function check(){
var check = new validateName();
var action1 = JSON.parse(request.responseText);
if(check.flag) {
return false;
}else {
return true;
}
}
到了JSON.parse这里失败,请高手看看这个函数应该怎么写,谢谢
--------------------编程问答-------------------- alert("提示信息");//弹提示窗口
给你的提交按钮一个id 然后 document.getElementById("id").disabled="disabled";//按钮不可用
document.getElementById("id").focus();//获取焦点
补充:Java , Web 开发