3、checkbox是否被选中。
用的是一个伪类的方法。不管是用客户端控件还是服务器端的控件,jquery中的方法都是
if ($("#checkboxid:checked").length==0){//未选中}
4、button按钮的onclick="window.close();"方法,对ie浏览器适用性最好。对火狐浏览器,需要修改浏览器配置,才可以适用。具体的调配置的过程是:
在Firefox地址栏里输入 about:config
在配置列表中找到 dom.allow_scripts_to_close_windows
点右键的选切换把上面的false修改为true即可。
注:默认是false,是为了防止脚本乱关窗口
5、登录三次出错提示输入验证码的操作:
这个,我彻底没搞懂。是师父写的。
在后台做一个判断:
/// <summary>
/// 登录时判断是否需要显示验证码
/// </summary>
/// <param name="logonName"></param>
/// <returns>1需要输入验证码,0不需要输入验证码,-1用户不存在</returns>
public static int LogonCheck(string logonName)
{
try
{
return LClsLogonMain.CheckIsInputValidateCode(logonName);//这个方法返回一个int类型的参数,
}
catch
{
return -100;
}
}
但是,在后台并没有哪个地方调用这个方法。
在前台做的判断是:
$('#txtUsername').blur(function() {
$.ajax({
type: "POST",
url: "/CheckService.asmx/LogonCheck",
data: { logonName: $('#txtUsername').val() },
success: function(msg) {
if ($(msg).find("int").text() == "1") {
$('.areaValidateCode').show().find('input').val('');
}
else {
$('.areaValidateCode').hide();
}
}
});
});
if ($.trim($('#txtUsername').val()) != '') {
$.ajax({
type: "POST",
url: "/CheckService.asmx/LogonCheck",
data: { logonName: $('#txtUsername').val() },
success: function(msg) {
if ($(msg).find("int").text() == "1") {
$('.areaValidateCode').show().find('input').val('');
}
else {
$('.areaValidateCode').hide();
}
}
});
}
html代码为:
<tr class="areaValidateCode" style="display:none;">
<td class="col1">
验证码:
</td>
<td class="col2">
<asp:TextBox runat="server" ID="txtValidateCode" CssClass="ipt-text" Width="50px"></asp:TextBox>
<div style="float:right;">
<img src="CreatePic.aspx" id="validateImg" />
<a href="javascript:refPic('validateImg');"><span>看不清楚</span></a>
</div>
</td>
</tr>
对应的asmx文件中的方法的代码:
/// <summary>
/// 临时登录使用的WebService
/// </summary>
/// <param name="logonName">用户帐号</param>
/// <returns>1需要输入验证码,0不需要输入验证码,-1用户不存在</returns>
[WebMethod]
public int LogonCheck( string logonName )
{
try
{
return LClsLogonMain.CheckIsInputValidateCode( logonName );
}
catch
{
return -100;
}
}
6、display:none;与visible:false;的区别
发现这两个属性给tr,都可以控制tr看不到。两者的区别是:
display:none;依然在客户端输出,但是在显示的时候,不显示了。但是查看源代码时,还是可以看到的。
而,visible:false;不在客户端输出。
在这里,需要注意的是:visible:false;的属性,如果在jquery中取的话,用的也是伪类的办法,就是用$("#id:visible").length与0比较,来判断是否该属性。