首先:
此页面适用于在线药店。
我们正在使用一个小脚本从保险公司检索一些数据,以确保用户实际拥有保险。
在我们的一个页面上,我们有 2 个文本字段和一个按钮。文本字段向.click()
按钮发送 a 以检索一些信息,但前提是它们都填充了正确类型的数据。
这有效。
为了提高我们网站的可用性,我们正在创建一个通过不同页面的流程。前面描述的页面就是其中之一。我确信所需的信息总是在 2 个文本字段中,所以我使用 JavaScript 将 a 发送.click()
到按钮。但不知何故$('ZK').click();
不起作用,但alert(); $('ZK').click();
确实如此。
有没有人能够向我解释为什么第一个不起作用而第二个不起作用?也许还有我如何解决这个小问题?
有什么与.click()
没有事件或什么的吗?
此页面内的代码:(未间接加载)
文本字段和按钮:
<INPUT onkeypress="return noenter()"
onkeydown="return isNumericKey(event)"
TYPE="TEXT"
class="ajaxsearch"
name="DOB" id="DOB"
value="<%=DOB%>"
MAXLENGTH="8"
style="width:60px;height:18px"
onkeyup="javascript:if ($(DOB).get('value').length==8 &&
$(DOB).get('value')!='ddmmjjjj')
{
var myFx=new Fx.Tween($(DOB));
myFx.set('color','#000066');
$('ZK').click();
} else {
var myFx=new Fx.Tween($(DOB));
myFx.set('color', '#cc0000');
};"> `
<INPUT url="?NC=<%=Rnd(Now)%>"
TYPE="BUTTON"
NAME="ZK" ID="ZK"
VALUE="Zoek mij"
class="button"
style="width:70px;height:22px">
调用脚本:
if ($('DOB').get('value').length==8
&& $('DOB').get('value')!='ddmmjjjj')
{
var myFx=new Fx.Tween($('DOB'));
myFx.set('color', '#000066');
//alert();
$('ZK').click();
} else {
var myFx=new Fx.Tween($('DOB'));
myFx.set('color', '#cc0000');
}
Ajax 脚本和调用:
<script language="javascript">
window.addEvent('domready', function() {
$('ZK').addEvent('click', function(event) {
event.stop();
var req = new Request.HTML({
method: 'post',
url: '../ajax/a_bsn.asp',
data: {
'BSN':$('BSN').get('value'),
'DOB':$('DOB').get('value'),
'RequestType':'WWW',
'RXID':'<%=GUID%>'
},
update: $('RES'),
onRequest: function() {
$('RES').innerHTML = '<img width="16px" height="16px" src="../images/spinner.gif"/>';
}}).send();
});
////////
<% If (Len(BSN)=8 or Len(BSN)=9) and IsNumeric(BSN) and Len(DOB)=8 and IsNumeric(DOB) Then %>
if ($('BSN').get('value').length>7){
var myFx=new Fx.Tween($('BSN'));
myFx.set('color', '#000066');
} else {
var myFx=new Fx.Tween($('BSN'));
myFx.set('color', '#cc0000');
}
if ($('DOB').get('value').length==8 && $('DOB').get('value')!='ddmmjjjj'){
var myFx=new Fx.Tween($('DOB'));
myFx.set('color', '#000066');
// var $zk = $('ZK'); console.log($zk); $zk.click();
// alert('Uw gegevens worden ingevuld.');
setTimeout("$('ZK').click();",1);
//$('ZK').click();
} else {
var myFx=new Fx.Tween($('DOB'));
myFx.set('color', '#cc0000');
}
<% End If %>
////////
});
</script>
受 Ajax 影响的 Div
<DIV id="RES">
<INPUT TYPE="TEXT" ID="PNAAM" onkeypress="return noenter()" NAME="PNAAM" VALUE="<%=PNAAM%>" class="text_inv" style="width:375px">
</div>