当前位置:编程学习 > C#/ASP.NET >>

alert()为么会失效

各位,我做了一个保存数据的页面,其中有一个判断条件,是当某个文本框为空时,有response.write(<script>alert('###')</script>)弹出提示窗口,然后用return语句退出这个事件。这个调试通过了, 可是后面再想加判断用同样的方法弹出提示窗口就不行了,不知为什么,我在弹出窗口前加了断点,发现语句执行到了这一步,但窗口弹不出来。请问为什么。 --------------------编程问答-------------------- response.write(<script>alert('###')</script>)
 这样的写法是错误的
 应该改成
response.write("<script>alert('###')</script>"); --------------------编程问答-------------------- 楼上的正解,如果这样还不行,那就是用了Ajax的原因 --------------------编程问答-------------------- 这句只是输出脚本,窗口弹出是发生在return之后,进程结束之后,页面返回客户端后,客户端浏览器解读出alert()之后,再弹出的,所以,"发现语句执行到了这一步"时,客户端当然弹不出窗口... --------------------编程问答-------------------- 楼上正解~ --------------------编程问答-------------------- Response.Write("<script>alert('###')</script>");
后面不能再有服务器端的语句,服务器和客户端的交互可不是你来我往的,要等服务器都执行完了才会发送到客户端
--------------------编程问答-------------------- 同意楼上 --------------------编程问答-------------------- ... --------------------编程问答-------------------- 三点要注意,一是引号问题(一楼所示),而是alert不要在ajax框架里,三是不y有response.redirect("")。 --------------------编程问答-------------------- 你已经return了还怎么alert啊,button1.Attributes["onclick"]="return test()";
<script>
function test()
{
  if(textbox1.value=""&&textbox1.value=null)
  {
     alert("###");
     return false;
   }else
   {
     return true;
    }
}
</script> --------------------编程问答-------------------- support it... --------------------编程问答--------------------
以下就是我的代码,当sjch.Text为空时,就可弹出提示框,当不为空时,就弹不出,不知为什么。
protected void update_Click(object sender, EventArgs e)
    {




        if (sjch.Text.Trim() == "")
        {
            Response.Write("<script>window.alert('#######')</script>");
            
        }
       if (sjch.Text.Trim() != "")
        {
            OracleConnection xtbaconn = new OracleConnection(oraconn);
            xtbaconn.Open();
            OracleCommand command = new OracleCommand("select a.wybshm,a.mc,a.pp,a.xh,a.tz,b.wpsz from tbl_wp_qtwp a,tbl_wp_jcxx b where b.dq='on' and a.id_wpqt=b.id_wp and b.dm_wp='005' and a.wybshm is not null and a.bz_jlsc='0' and a.wybshm ='" + sjch.Text.Trim() + "'");
            command.Connection = xtbaconn;
            OracleDataReader reader = command.ExecuteReader();
            if (reader.Read())
            {

                Response.Write("<script>window.alert('######')</script>");

            }

            reader.Close();
            xtbaconn.Close();


            SqlCommand comm = new SqlCommand();
            comm.Connection = connection;


            comm.CommandText = "insert into sjxx(sjpp,sjxh,sjch,sjys,lrr,lrsj,lrdw,sgr,sgrq,csrxm,csrnl,csrsg,csrky,csrtt,csrlxfs,csrsfzh,csec,qt,czqk,xxjb) values('"
                       + sjpp.Text.Trim() + "','" + sjxh.Text.Trim() + "','" + sjch.Text.Trim() + "','" + sjys.Text.Trim() + "','" + lrr.Text.Trim() + "','" + lrsj.Text.Trim() + "','" + lrdw.SelectedItem.Text.Trim() + "','" + sgr.Text.Trim() + "','" +
                        sgsj.Text.Trim() + "','" + csrxm.Text.Trim() + "','" + csrnl.Text.Trim() + "','" + csrsg.Text.Trim() + "','" + csrky.Text.Trim() + "','" + csrtt.Text.Trim() + "','" + csrlxfs.Text.Trim() + "','" + csrsfzh.Text.Trim() + "','" +
                      csec.Text.Trim() + "', '" + qt.Text.Trim() + "','" + czqk.Text.Trim() + "','" + xxjb.SelectedItem.Text + "')";




            comm.ExecuteNonQuery();

            Response.Redirect("sjxxlr.aspx");


            connection.Close();


        }
       
    } --------------------编程问答-------------------- Response.End(); --------------------编程问答-------------------- 别的没看,我觉得你那个if (sjch.Text.Trim() != "")可以不要吧
你前面不是判断了if (sjch.Text.Trim() == ""),再判断是多余的吧 --------------------编程问答-------------------- 一开始也没有if (sjch.Text.Trim() != ""),但窗口弹不出,所以才改成这样,但哪晓得还是不行 --------------------编程问答-------------------- 把Response.End();加在第一个判断里还是不行 --------------------编程问答-------------------- 三点要注意,一是引号问题(一楼所示),而是alert不要在ajax框架里,三是不y有response.redirect("")。

講很很全面 --------------------编程问答-------------------- 请问AJAX含义 --------------------编程问答-------------------- 三点要注意,一是引号问题(一楼所示),而是alert不要在ajax框架里,三是不y有response.redirect( " ")。


这是正解~~~~!!!!!!!!!!!!!!!!!!!!!!! --------------------编程问答-------------------- Response.write("<script>alert('')</script>"); --------------------编程问答--------------------
引用 1 楼 fengyupeng 的回复:
response.write( <script> alert( '### ') </script> )
  这样的写法是错误的
  应该改成
response.write( " <script> alert( '### ') </script> ");

好象默认是VBSCRIPT的
--------------------编程问答-------------------- 学习了
--------------------编程问答-------------------- response.write("<script>alert('###')</script> ");
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,