62,074
社区成员
发帖
与我相关
我的任务
分享
function ask_edit(url,w,h)
{
var sid="";
var chks = document.getElementById('<%=gvDetails.ClientID %>').getElementsByTagName('input') ;
var flag = true;
var cnkLength="";
for(var i=0; i<chks.length; i++)
{
if(chks[i].checked && chks[i].type =="checkbox")
{
flag=false;
break;
}else{
sid=chks[i].value;
}
}
if(flag){
alert("必须选择一行修改!");
return false;
}
if (w>0 && h>0)
{
window.open(url+'.aspx?id='+sid,w,h);
}
else
{
window.open(url+'.aspx?id='+sid);
}
<asp:GridView ID="gvDetails" runat="server" PageSize="15" DataKeyNames="id"
OnRowCreated="gvDetails_RowCreated" AutoGenerateColumns="False"
Width="100%" HorizontalAlign="Center">
<RowStyle HorizontalAlign="Center" VerticalAlign="Middle" Height="24px" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<input id="ckbDelID" name="sid" runat="server" type="checkbox" value='<%# Eval("id") %>' style="height:24px"/>
<%--<input id="rad" type="radio" value='<%# Eval("id") %>' />--%>
</ItemTemplate>
</asp:TemplateField>
<asp:Button ID="rbnEdit" runat="server" CssClass="sky_blue" OnClientClick="ask_edit('Laborage_edit');" Text="修 改" />
protected void upd_Click(object sender, EventArgs e)
{
string count = "";
for (int i = 0; i < GridView1.Rows.Count; i++)
{
HtmlInputCheckBox ckbUpdate =
(HtmlInputCheckBox) this.GridView1.Rows[i].FindControl("ckbUpdate");
if (ckbUpdate.Checked)
{
count += ckbUpdate.Value + ",";
}
}
string[] str = count.Split(',');
if (str.Length != 2)
{
Page.ClientScript.RegisterStartupScript(GetType(), "1", "<script>alert('修改必须选中一项')</script>");
return;
}
else
{
string aaa = count.Remove(count.IndexOf(','));
Page.ClientScript.RegisterStartupScript(GetType(), "1", "<script>alert('"+aaa+"')</script>");
//Response.Redirect("TestID.aspx?id" + str);
}
}
function edit(){
var chks = document.getElementById("<%=GridView1.ClientID %>").getElementsByTagName('input');
var count =0;
var sid="";
var flag = true
//alert(count);
for(var i=0; i<chks.length;i++)
{
if(chks[i].checked && chks[i].type =="checkbox")
{
flag = false;
break;
}
}
if(flag){
alert("必须选中一项");
return false;
}
}
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="id" DataSourceID="SqlDataSource1">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<input type="checkbox" runat="server" id="ckbUpdate" value='<%# Eval("id") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="id" HeaderText="id" InsertVisible="False"
ReadOnly="True" SortExpression="id" />
<asp:BoundField DataField="filename" HeaderText="filename"
SortExpression="filename" />
<asp:BoundField DataField="users" HeaderText="users" SortExpression="users" />
</Columns>
</asp:GridView>
function test()
{
var gv = document.getElementById("<%= GridView1.ClientID %>");
var cbs = gv.getElementsByTagName("input");
var row = 0;
var rowId = ""
var j=0;
for (var i = 0; i < cbs.length; i++)
{
if (cbs[i].type == "checkbox")
{
if (cbs[i].checked == true)
{
rowId = row ;
j++
}
row++;
}
}
if(j==0 || j>1)
{
if(j==0)
alert("必须选中一行!!");
else
alert("不能选择多行,只能选一行!");
return false;
}
else
{
alert("选中的行是--" + rowId);
return true;
}
}
for(var i=0; i<chks.length; i++)
{
if(chks[i].checked && chks[i].type =="checkbox")
{
flag=false;
break;
}else{
sid=chks[i].value;
}
}
这里如果为了控制只能选中一个,并且把选择的值取出来的话,那这段Js就错了。