我设置了一个”删除“按钮和一列checkbox,当没有选中checkbox而点击“删除”时,想让它显示“请选择要删除的项”,要是选中了“删除”,则提示“确实要删除吗”,可是我试了很多次都无法实现,希望大家帮帮忙,帮我解决一下!
我是这样写的:
Dim Script As String
If IsChecked = "True" Then(这个是判断checkbox是否被选中)
Script = "<Script Language='JavaScript'>"
Script += "if(confirm('确实要删除吗?')))){return true;}else{return false;};" & "<"
Script += "/Script>"
Response.Write (Script)
Else
Script = "<Script Language='JavaScript'>"
Script += "window.alert('请选择要删除的项!')," & "window.location='EmployeeInfor.aspx'" & "<"
Script += "/Script>"
Response.Write (Script)
End If
可是“确实要删除吗”这个提示框根本就显示不出来,无论是选中checkbox与否都显示“请选择要删除的项”,这是怎么回事呀??请大家帮忙解决一下,拜托了!!
我是这样写的:
Dim Script As String
If IsChecked = "True" Then(这个是判断checkbox是否被选中)
Script = "<Script Language='JavaScript'>"
Script += "if(confirm('确实要删除吗?')))){return true;}else{return false;};" & "<"
Script += "/Script>"
Response.Write (Script)
Else
Script = "<Script Language='JavaScript'>"
Script += "window.alert('请选择要删除的项!')," & "window.location='EmployeeInfor.aspx'" & "<"
Script += "/Script>"
Response.Write (Script)
End If
可是“确实要删除吗”这个提示框根本就显示不出来,无论是选中checkbox与否都显示“请选择要删除的项”,这是怎么回事呀??请大家帮忙解决一下,拜托了!!
解决方案 »
- 页内导航滚动效果
- 问一个aspx中的js脚本问题。
- image和table的间隙问题
- 如何不通过Value直接获得dropdownlist显示的值?
- 求高手解!!!我才做了个.net网页,在2003服务器下一打开这个网页很正常,再打开其他的网页,其他网页就会出现乱码,不打开我做的网页,其他正常
- 请教asp.net中如何把其他工具做成的静态页面导入?
- 请问大家如何重写 Render方法
- 不管是不是高手,主要能解决这两个两个问题的都有分:Loading和刷新的问题,高分!!!在线等
- 有大牛知道怎么使用php和.net进行混合开发吗?
- 如何从web窗体向水晶报表里面传值?
- 我的错误,需要怎么处理阿?
- 关于datalist的SelectedItemTemplate的按钮事件??
改为Script += "</Script>"
如果是bool的直接写ischecked=true
看看ischecked是什么类型的值
Button1.Attributes.Add("onclick","if(!document.all['CheckBox1'].checked){alert('请选择要删除的项');return false}else{return confirm('确实要删除吗?');}")
IsChecked.Checked = "True"
Button1.Attributes.Add("onclick","javascript:return confirm('确实要删除吗?');")
End If
顺便说一下,你的代码太经典了……
<script language="javascript">
function myClick()
{
var inputs=document.getElementsByTagName("INPUT");
var ischecked=false;
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type=="checkbox" && inputs[i].checked)
{
ischecked=true;
}
}
if(ischecked)
confirm("are you really want to delete them!");
else alert("please select first!");
}
</script>
然后在onload里给button注册事件,如下:
this.Button1.Attributes.Add("onclick","myClick();");
直接return confirm ,点确定往下执行,不点则都不做
控件名.attribute.add("onclick","return confirm('');");
就可以了
1.设原先的button1的width和height均为1,并取消在on_load中对其onclick的属性注册,
2.添加一个html控件button2,注意这里是html控件,而不是服务端控件。并编辑其html代码,在其属性上添加 onclick="myClick();",
3.这里我们再把原先的myClick方法修改一下,如下:
<script language="javascript">
function myClick()
{
var inputs=document.getElementsByTagName("INPUT");
var ischecked=false;
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type=="checkbox" && inputs[i].checked)
{
ischecked=true;
break;
}
}
if(ischecked)
{
if(confirm("are you really want to delete them!"))
document.getElementById('<%=Button1.ClientID%>').click();
}
else alert("please select first!");
}
</script>呵呵,全部代码就如上所述了,因为本人javascript水平有限,所以写的不是太完善,还请各位高手指点一下,呵呵
控件名.attribute.add("onclick","return confirm('');");这种办法我也试过了
delbutton.attribute.add("onclick","return confirm('确实要删除吗?');");只有写在page_load里面才管用,而且不管你是否选中checkbox,点击删除按钮都会显示“确实要删除吗”的框,我只想当点击了删除按钮后才出现,请大家在帮一下忙,谢了!
我的代码都写在
<Script Language="VB" Runat="Server">
我的代码
</Script>后保存为*.aspx,而在同一页面,不能使用两种语言吧。
如<Script Language="javascript" Runat="Server">
</Script>
在同一页面中又有<Script Language="VB" Runat="Server">
</Script>在asp.net中是不允许的吧!
或者说<Script Language="VB" Runat="Server">
中间夹有<Script Language="javascript" Runat="Server">
</Script></Script>也是不行的吧!我想知道<Script Language="javascript" Runat="Server">
</Script>
中的代码怎么用在<Script Language="VB" Runat="Server">
</Script>中这是我的愚见,请指教!
If IsChecked = "True" Then(这个是判断checkbox是否被选中)
Script = "<Script Language='JavaScript'>"
Script += "return confirm('确实要删除吗?') false;};" & "<"
Script += "/Script>"
Response.Write (Script)
Else
Script = "<Script Language='JavaScript'>"
Script += "window.alert('请选择要删除的项!')," & "window.location='EmployeeInfor.aspx'" & "<"
Script += "/Script>"
Response.Write (Script)
End If
Webform1.aspx
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="TestVB.WebForm1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>WebForm1</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript">
function myClick()
{
var inputs=document.getElementsByTagName("INPUT");
var ischecked=false;
for (var i=0; i < inputs.length; i++)
{
if (inputs[i].type=="checkbox" && inputs[i].checked)
{
ischecked=true;
break;
}
}
if(ischecked)
{
if(confirm("are you really want to delete them!"))
document.getElementById('<%=Button1.ClientID%>').click();
}
else alert("please select first!");
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:button id="Button1" style="Z-INDEX: 102; LEFT: 432px; POSITION: absolute; TOP: 32px" runat="server"
Height="1px" Width="1px" Text="Button1"></asp:button>
<INPUT style="Z-INDEX: 105; LEFT: 488px; WIDTH: 88px; POSITION: absolute; TOP: 24px; HEIGHT: 24px"
type="button" value="Button" onclick="myClick();">
<asp:datagrid id="DataGrid1" style="Z-INDEX: 103; LEFT: 208px; POSITION: absolute; TOP: 72px"
runat="server" Height="88px" Width="553px">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<FONT face="宋体">
<asp:CheckBox id="CheckBox1" runat="server" Text="check"></asp:CheckBox></FONT>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
</form>
</body>
</HTML>
Webform1.aspx.vbPublic Class WebForm1
Inherits System.Web.UI.Page#Region " Web 窗体设计器生成的代码 " '该调用是 Web 窗体设计器所必需的。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() End Sub
Public p = 10
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid '注意: 以下占位符声明是 Web 窗体设计器所必需的。
'不要删除或移动它。
Private designerPlaceholderDeclaration As System.Object Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
'不要使用代码编辑器修改它。
InitializeComponent()
End Sub#End Region Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
If (Not Page.IsPostBack) Then Dim sc As System.Data.SqlClient.SqlConnection
sc = New System.Data.SqlClient.SqlConnection("server=localhost;database=pubs;uid=sa;pwd=58801353;")
Dim sda As System.Data.SqlClient.SqlDataAdapter
sda = New System.Data.SqlClient.SqlDataAdapter("select * from sales", sc)
Dim ds As System.Data.DataSet
ds = New DataSet
sda.Fill(ds, "authors")
DataGrid1.DataSource = ds.Tables(0).DefaultView
' DataGrid1.DataKeyField = "you should set your keyfield for delete"
DataGrid1.DataBind()
sc.Close() End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Response.Write("Button1 clicked,you can write some delete code here") End Sub
End Class
好了,上面的代码就可以完成你的要求了,呵呵,不过我VB的水平有限,只能写到这个程度了
不过,重要的不是代码如何写,而是思路是怎样的,你最好还是好好看看 我前面写的思路。GOOD LUCK
前台代码<script language=javascript>
<!--
function Check()
{
var count;
var i;
var flag=0;
count=parseInt(document.all.item("RecordCount").value);(得到checkbox的数目)
(判断checkbox是否选中)
for (i=2;i<=parseInt(count+1);i++)
{
if (eval(document.all.item("mydatagrid__ctl" +i+ "_Chx")).checked==true)<checkbox的ID是组合生成的,源文件可以看到>
{
flag=1;
break;
}
}
if (flag==0)
{
alert("请先选择单据!");
return (false);
}
else
{
if (!confirm("你确定提交吗?"))
{
return (false);
}
else
{
return (true);
}
}
}
//-->
</script>
Button1.Attributes.Add("onclick","if(!document.all['CheckBox1'].checked){alert('请选择要删除的项');return false}else{return confirm('确实要删除吗?');}")