我在datalist空间中使用了checkbox这个html控件,然后我想在后台获取datalist中的checkbox空间。不要告诉我在前台控件中加run="server",因为我前台要用JS遍历了该控件,不能加那句。哪位知道的就来帮帮忙吧。
解决方案 »
- 愁人的错误
- AJAX传送一个值给服务器页面,生成图片 怎么返回?
- ASP.NET中怎样实现数据的导入和导出?我都急疯了!!
- 请问对数据库的访问用store procedure实现还是嵌套到.net程序中实现,那种方式比较好??
- 将数据库中时间样式,转换成指定样式
- 哪位大侠知道如何控制HtmlInputFile中文件类型的过滤,使弹出的选择文件对话框中的文件类型只为.DOC。高分酬谢。
- 怎样用C#语言 把从SQL数据库中查询到的东西存入一张临时表里面
- asp.net 中动态加载控件遇到的问题.
- datagrid的响应事件中如何得到HyperLinkColumn中显示的字段文本。
- form提交问题,急!
- gridview获取每行中Label的值。。。高手进。。急。急。急。。。
- 如何把打开的图片固定成新的大小
我使用过System.Web.UI.HtmlControls.HtmlInputCheckBox checkbox = (System.Web.UI.HtmlControls.HtmlInputCheckBox)item.FindControl("checkbox1") ,(我这里的item=datalist1.datalistitem[i];)但是获取不到ID=“checkbox1”的控件,应该是我的ID和服务器端产生的ID不同,所以获取不到。
要么就用js 给hidden赋值 再到后台去hidden的值
你把html的控件id 改成和你的数据id一样就行了 或者改成你想要的值
public int Photo_Delete(string val)
{
int a =0;
string str = "DELETE Pictures WHERE Name=@Name";
SqlParameter[] pram = { new SqlParameter("@Name", val) };
a=database.RunProc(str, pram);
return a;
}
公共类中的方法
public int RunProc(string ProName,SqlParameter[] prams) //对数据库进行插入、删除、更新操作,带参数
{
this.Open();
SqlCommand Command = new SqlCommand(ProName,con);
if (prams != null)
{
foreach (SqlParameter i in prams)
{ Command.Parameters.Add(i); }
}
Command.ExecuteNonQuery();
this.Closed();
return 1;
}
前台调用 function photo_delete() {
var a = 0;
var x = document.getElementsByName("select_photo"); for (var i = 0; i < x.length; i++) { if (x[i].checked == true) break; if (i == x.length - 1) { alert("请先选择图片");return; } }
var que = confirm("确定要删除图片?");
if (que == 0)
return;
for (var i = 0; i < x.length; i++)
{
if (x[i].checked == true) { a = '<%=Photo_Delete("'+x[i].value+'")%>'; }
}
alert(a);
}
我执行删除文件,程序没错误,可是数据库中的数据还是没删掉。公共类中的方法肯定没问题,我其他地方都还用过,就是不知道原因了。大家帮帮忙,解决了我加分。
或者
request.form["checkbox1"]
我是想将前台选择图片的checkbox的value值传给后台,然后后台再依据value值进行删除操作。所以问下大家有没有什么办法可以不然服务器首先执行被调用的方法。
假设有一input控件,
<input type=button id='btnOk' runat='server' value="OK"/>
那么你在html的<script>和</script>之间里,可以这么拿到这个控件的id:
var btnOkId='<%=btnOk.ClientID%>';
这样,btnOKId即为这个button控件的真正客户端id, 拿到客户端id后,你就可以用js控制它了。
这个方法同样适用于asp.net服务端控件。总之,只要是服务端控件,想要在客户端的js里控制它,都要按照这种方法拿到服务端控件的正确客户端id.
另外说声:这里的 "checkbox1" 是html控件中的name 的属性值,所以你要先给html控件配name属性。
<input type='checkbox' id ='checkbox0001' name='checkbox1' />