如何将客户端事件与服务器端事件ASP.NET,c#进行交互 [英] how to interact client side events with sever side events ASP.NET,c#

查看:95
本文介绍了如何将客户端事件与服务器端事件ASP.NET,c#进行交互的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

HI,



i有删除标签,因为我需要输入memberid或cardid然后点击OK.

当我点击OK按钮然后弹出应该来确认(OK,取消),如果按OK,需要删除记录并清除文本框。



我的问题是:

没有输入任何文本框,单击确定按钮然后它给出弹出窗口,

如何解决它。

这里是删除选项卡的代码:< pre lang =c#>< pre lang = c#>< table align = center >
< tr>

< td> < / td >
< td align = right > < / td >


< td class = style1 > 删除会员 < / td > < span class =code-keyword>< / tr >


< tr>< td> < / td > < td align = right>会员ID:< / td > < td = style1 >



< asp:TextBox ID = txtdmemid runat = server高度= 21px宽度= 112px
> < / asp:TextBox > < / td > < / tr > ;


< tr>< td> < / td > < td align = 正确>卡ID:< / td > < td = style1 >
< asp:TextBox ID = txtdcardid runat = server
> < / asp:TextBox > < / td > < / tr >


< tr>< td> < / td > < td align = right >



< asp:按钮ID = btndok runat = server Text = 确定 OnClick = btndok_Click onclientclick = return DeleteItem() /> < / td >


< td class = style1 >



< asp:Button ID = < span class =code-string> btndcancel runat = server Text = 取消
onclick = btndcancel_Click OnClientClick = this.form.reset(); return false; /> < / td > < / tr > < / 表格 > < / asp:Panel >



和ok按钮代码背后是:

< pre lang =   c# >  受保护 < span class =code-keyword> void  btndok_Click( object  sender,EventArgs e)
{
if (txtdmemid.Text!= || txtdcardid.Text!=
{
using (MySqlConnection con = new MySqlConnection(ConnectionString))
{
字符串 query = 从admin中删除member_id = @ memid或card_id = @ card< /跨度>;
MySqlCommand command = new MySqlCommand(query,con);
command.Parameters.AddWithValue( @ memid,txtdmemid.Text);
command.Parameters.AddWithValue( @ card,txtdcardid.Text);
con.Open();
command.ExecuteNonQuery();

} // connection
} // 如果
// else
// {
// Response.Write(< script type ='text / javascript'>);
// Response.Write(alert('请输入成员ID或CARD ID'); );
// Response.Write(< / script>);


// }
}

解决方案

你可以tr y带有Requiredfieldvalidator控件。

此链接可能有用

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.requiredfieldvalidator(v = vs.110)。 aspx [ ^ ]


javascript代码:



 <   script    语言  =  javascript    type   =  text / javascript >  
function ConfirmOnDelete(SIMCODE){
if(确认(你确定要删除)== true){
window.location =del.aspx?SIMCODE =+ SIMCODE + & DOIF =+ 7;
返回true;
}



javascriopt代码将我重定向到带有查询字符串的del.aspx页面。我正在执行删除功能,你可以在按钮代码后删除功能。



按钮代码:



< button id =btndelvalue =删除class =btn btn-danger占位符=删除onclick =ConfirmOnDelete('<%#Eval(MobileNo) %>')> Del 
< / button>





删除del.aspx页面上的功能。



 protected void Page_Load(object sender,EventArgs e)
{
doif = Convert.ToInt32(Request.QueryString [DOIF]);
if(doif == 1)
{

rec = Request.QueryString [ORDCODE]。ToString();
rec_id = Convert.ToInt32(rec);
dl.DeleteCompany(rec_id);
Response.Redirect(CompanySetup.aspx);
//Page.RegisterStartupScript(\"close,< script> self.close();< / script>);
//this.ClientScript.RegisterClientScriptBlock(this.GetType(),Close,window.close(),true);
}
}





请告诉我,如果你得到的话。



它在我的所有项目中运作良好。


如果我在你的鞋子里我会做简单的javascript / jquery验证来检查里面的修剪值是否合适文本框的长度大于等于0,然后我会运行你的脚本。



< script type =text / javascript> 
函数DeleteItem(){
if(


HI,

i have delete tab , in that i need to enter either memberid or cardid then hit OK.
when i hit OK button then popup should come for confirmation (OK,Cancel),if press OK ,need to delete record and clear the textbox.

my problem is:
with out entering any in textboxes ,click OK button then it's giving popup,
how to solve it.
here is the code for Delete tab:

<pre lang="c#"><table align="center">
 <tr>
                
 <td></td>
 <td align="right" ></td>
            
                
 <td class="style1">Delete Member </td></tr>
            
            
 <tr><td></td><td align="right">Member ID: </td><td class="style1">
                
                

        <asp:TextBox ID="txtdmemid" runat="server" Height="21px" Width="112px" 
           ></asp:TextBox>   </td></tr>
            
            
<tr><td></td><td align="right">Card ID: </td><td class="style1">
    <asp:TextBox ID="txtdcardid" runat="server" 
       ></asp:TextBox>   </td></tr>
            
            
 <tr><td></td><td align="right">
                
                

    <asp:Button ID="btndok" runat="server" Text="OK" OnClick="btndok_Click" onclientclick="return DeleteItem()" />   </td>
                
                
 <td class="style1">
                    
                    

        <asp:Button ID="btndcancel" runat="server" Text="Cancel" 
            onclick="btndcancel_Click" OnClientClick="this.form.reset();return false;"  />   </td></tr></table></asp:Panel>


and ok button code behind is:

<pre lang="c#"> protected void btndok_Click(object sender, EventArgs e)
        {
            if (txtdmemid.Text != "" || txtdcardid.Text != "")
            {
                using (MySqlConnection con = new MySqlConnection(ConnectionString))
                {
                    String query = "delete from admin where member_id=@memid OR card_id=@card";
                    MySqlCommand command = new MySqlCommand(query, con);
                    command.Parameters.AddWithValue("@memid",txtdmemid.Text);
                    command.Parameters.AddWithValue("@card", txtdcardid.Text);
                    con.Open();
                    command.ExecuteNonQuery();

                }//connection
            }//if
            //else
            //{
            //    Response.Write("<script type='text/javascript'>");
            //    Response.Write("alert('PLEASE ENTER EITHER MEMBER ID or CARD ID');");
            //    Response.Write("</script>");


            //}
        }

解决方案

You can try with Requiredfieldvalidator control.
This link may be usefull
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.requiredfieldvalidator(v=vs.110).aspx[^]


javascript code:

<script language="javascript" type="text/javascript">
        function ConfirmOnDelete(SIMCODE) {
            if (confirm("Are you SURE you want to Delete") == true) {
                window.location = "del.aspx?SIMCODE=" + SIMCODE + "&DOIF=" + 7;
                return true;
            }


The javascriopt code is redirecting me to the del.aspx page with query string. where i'm performing delete function, u can c delete function after button code.

button code:

<button id="btndel" value="Delete" class="btn btn-danger" placeholder="Delete" onclick="ConfirmOnDelete('<%# Eval("MobileNo") %>')">Del
                                                           </button>



Delete function on del.aspx page onload.

protected void Page_Load(object sender, EventArgs e)
        {
            doif = Convert.ToInt32(Request.QueryString["DOIF"]);
            if (doif == 1)
            {

                rec = Request.QueryString["ORDCODE"].ToString();
                rec_id = Convert.ToInt32(rec);
                dl.DeleteCompany(rec_id);
                Response.Redirect("CompanySetup.aspx");
                //Page.RegisterStartupScript("close", "<script>self.close();</script>");
                //this.ClientScript.RegisterClientScriptBlock(this.GetType(), "Close", "window.close()", true);
            }
}



plz let me know, if u get it.

its working good in all my projects.


If am in your shoes i will just do simple javascript / jquery validation to check whether the trimmed value inside the textbox is having proper length>0 or not then i will Run your script.

<script type="text/javascript">
     function DeleteItem() {
          if (


这篇关于如何将客户端事件与服务器端事件ASP.NET,c#进行交互的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆