如何检查列表框在客户端是否为空
How to Check if ListBox is Empty on Client-Side
我创建了一个javascript confirm
,如下所示。
<script Type="Text/Javascript">
function CheckListBox(lvi)
{
if(lvi == "")
{
if(confirm("Are you sure?"))
{
return true;
}
else
{
return false;
}
}
}
</script>
我需要测试ListBox.Items
控件是否为空... 我已经在我的 aspx 页面上做了参考
<script language="javascript" type="text/javascript" src="/JS/confirm.js"></script>
我想知道如何在我的aspx.cs
页面上调用它。 。所以我可以通过parameter
:
string oi = Listbox_Clubes.Items.Count.ToString();//Its the parameter I want to pass
有关如何从代码隐藏执行 javascript 的信息,请参阅此链接
protected void Page_Load(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), Guid.NewGuid().ToString(), "CheckListBox(" + Listbox_Clubes.Items.Count.ToString() + ");", false);
}
注意: 必须在 aspx 页中添加脚本管理器控件。
对于你的 javascript,你可以在没有代码隐藏的情况下获取值(这假设脚本代码在同一页面中,以便获取客户端 ID):
<script>
function ClickListBox() {
if ($("#<%= Listbox_Clubes.ClientID %>").val() === null) {
if (confirm("Are you sure?")) {
return true;
}
else {
return false;
}
}
}
</script>
同样,您不使用 javascript 在服务器端进行验证。您发布的代码将返回列表框中的所有项。这是获取所选项目数计数的一种方法(我根据 OP 代码示例使用.ToString()
):
string oi = Listbox_Clubes.Items.Cast<ListItem>().Where(i => i.Selected).Count().ToString();
但是,您没有理由获取此值并将其传递回客户端以进行验证(听起来您想在帖子中做什么)。主要是因为这涉及回发,而客户端验证本质上应该在回发之前进行。此外,即使您具有客户端验证,您仍然需要执行服务器端验证。
相关:在代码隐藏中,您可以测试以查看是否通过以下方式选择了任何内容:
bool hasValue = Listbox_Clubes.SelectedItem != null;
.SelectedItem
返回列表控件中索引最低的选定项。如果未选择任何内容,则此值null
...因此,您知道如果值不是null
,则至少选择一个项目。
如果你想要求他们至少选择一个项目,你可以使用 RequireFieldValidator 并让它处理这两个验证。如果你没有对 ASP.NET 验证器做太多事情,那将是一件值得阅读的好事。
听起来您可能应该阅读有关客户端验证和服务器端验证以及如何使用它们的更多信息......因为看起来你把它们混在一起了。
计数代码是 ASP:ListBox 中代码的修改版本 获取所选项目 - 一行?
- 是否可以使用JavaScript/AAJAX在客户端创建一个文件
- 这是否可能延迟客户端的UpdatePanel更新
- 是否可以在客户端存储信息
- 检查HTML客户端是否接收到服务器的最佳实践's的回应
- socket.io 客户端是否必须存在于全局范围内
- 检查服务器端或客户端是否存在某些 Web 资源是否更好
- Javascript/PHP - 查找客户端是否在同一网络中
- 检查客户端是否可以访问资源的 RESTful 方法是什么?
- 测试客户端是否支持css道具.重复后代码中断
- Meteor后端代码在客户端是否始终可用
- socket.io客户端是否可以在本地发出事件
- 正在检测客户端是否安装了任何类型的PDF阅读器
- 检测客户端是否允许HTML5视频的内联媒体播放
- 客户端是否有办法在套接字断开连接时发送服务器数据?
- 如何从servlet检查客户端是否启用了Java Script
- 在使用长轮询时,如何检测客户端是否订阅接收基于推送的通知
- 如何从javascript检查邮件客户端是否存在
- 在服务器端创建html字符串并将其附加到客户端是否明智
- 如何检查列表框在客户端是否为空
- Java servlet:如何检测(在服务器端)JavaScript(在客户端)是否被篡改