你这个 onclick怎么加上的?

解决方案 »

  1.   

    不是,我是在执行的页面复制这些代码的,源文件如下(我只贴出有关联的):<script>...</script>就是上面的那个SCRIPT:
    <script>
    var img=null;
    var pflag=false;
    function s()
    {
    if(document.Form1.opus.value!=""){
    if(img)img.removeNode(true);
    img=document.createElement("img");
    img.style.position="absolute";
    img.style.visibility="hidden";
    img.attachEvent("onreadystatechange",orsc);
    img.attachEvent("onerror",oe);
    document.body.insertAdjacentElement("beforeend",img);
    img.src=document.Form1.opus.value;}
    else{
       alert("请选择文件!");
    pflag=false;
       return false;}
    }
    function oe()
    {
    alert("请确认您上传的文件是图片文件!");
    pflag=false;
    return false;
    }
    function orsc()
    {
    if(img.readyState!="complete"){pflag=false;return false;}

    if(img.fileSize>200*1024){
    alert("文件大小不能大于200K!");pflag=false;return false;}
    else{
    pflag=true;
    document.Form1.submit();
    return true;
    }
    }function postall(){
    for(var j=0;j<9;j++){
    //alert(document.forms[j].name);
    mysimage = eval("document.Form1"+j+".simage"+j+".value")
    mytxt = eval("document.Form1"+j+".prevue"+j+".value")
    if ((mysimage != "") && (mytxt != "")){
    document.forms[j].op.value = "do";
    document.forms[j].OnSubmit = "";
    document.forms[j].submit();
    }
    }
    }function ShowProgress(objfile)
    {
      var  pramStr='&pram=';
      pramStr=pramStr+objfile.form.aperture.value+',';
      pramStr=pramStr+objfile.form.shutter.value+',';
      pramStr=pramStr+objfile.form.isorate.value+',';
      pramStr=pramStr+objfile.form.exposal.value+',';
      pramStr=pramStr+objfile.form.retrieve.value+',';
      pramStr=pramStr+(objfile.form.ps[0].checked?'1':'0')+',';
      pramStr=pramStr+(objfile.form.photoflash[0].checked?'0':'1')+',';
      pramStr=pramStr+objfile.form.lens.value+',';
      //alert(pramStr);
      pramStr=pramStr+objfile.form.film.value+',';
      objfile.form.action=objfile.form.action+pramStr;  
      
    s();
    return false;
      strAppVersion = navigator.appVersion;
      if (pflag)
      {
      alert(objfile.form.action);
      return true; }
    }
    </SCRIPT><form id="Form1" method="post" runat="server" enctype="multipart/form-data" onSubmit="return ShowProgress(this.opus);">
    <INPUT type="file" size="50" runat="server" ID="File1" name="opus">
    <asp:button id="up" runat="server" Text=" 上 传 "></asp:button>
      

  2.   

    onclick="if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(); " 能这样写吗  是不是要加javascript
      

  3.   

    不是啊,那个是 执行aspx页面 之后显示出的HTML源码,关于源码我在楼上贴出了呀,麻烦你帮忙看看是哪里 不对应,谢谢!
      

  4.   

    onclick事件调用时,只要写onclick="check();"function check(){
       if (onfirm("请确认您上传的文件是图片文件!")== true)
            { return true}
       else 
            { return false}
    }
      

  5.   

    <input type="submit" name="Photo1:up" value=" 上 传 " onclick="if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(); " language="javascript" id="Photo1_up" />submit改成button试试了。
      

  6.   

    alert()方法是显示信息
    confirm()方法是提问,他显示了带有ok和cancel按钮的对话框
    如果点击ok,confirm()返回true
    如果点击cancel,confirm()返回false
      

  7.   

    如果js有错误的话,是会直接提交的。。
    试试把internet选项->高级->禁止脚本调试的钩打掉。看看会不会是js里哪里有错
      

  8.   

    回复小宝:
    我把<asp:button id="up" runat="server" Text=" 上 传 "></asp:button>
    改成<asp:button id="up" runat="server" Text=" 上 传 " onclick="check();"></asp:button>在aspx代码中加入
    <script language="javascript">
    function check(){
       if (onfirm("请确认您上传的文件是图片文件!")== true)
            { return true}
       else 
            { return false}
    }
    </script>这样在页面执行时,提示:编译器错误信息: CS1026: 应输入 )
    行 27:  <td align="center" width="100%" height="73"><asp:button id="up" runat="server" Text=" 上 传 " onclick=check();></asp:button>不行呀
      

  9.   

    回 cnhgj(戏子▄︻┳═一打你家玻璃):     没有呀,我没有禁止JS, 估计是里面的form input的name id 等的值与javascript代码里的不一致,有没有高手帮忙改正一下呀?
      

  10.   


    private const string SCP_NUMBER_ONLY_SCRIPT_ID="{29FD7A41-49FD-4fc4-AFA9-6A0B875A1A51}";
    private const string SCP_NUMBER_ONLY_HOOK="return Virty(this);";
    private const string SCP_NUMBER_ONLY_SCRIPT="<script language=\"JavaScript1.2\">\nfunction Virty (ctrl)\n{{\n"+"if (event.keyCode == 13)\n return true;\n if (event.keyCode < 48 || event.keyCode > 57)\n alert('请输入数字!');\n }}"+"</script>";
    private void RenderJavaScript()
    {
    if(!Page.IsClientScriptBlockRegistered(SCP_NUMBER_ONLY_SCRIPT_ID))
                                  Page.RegisterClientScriptBlock  (SCP_NUMBER_ONLY_SCRIPT_ID,string.Format(SCP_NUMBER_ONLY_SCRIPT,base.ID));
    }
    ///
    RenderJavaScript();
    YourButton.Attributes.Add("OnClick",SCP_NUMBER_ONLY_HOOK);
      

  11.   

    回: Octer(学习中....)
    你给的是 CS的代码啊,楼主要的是 ASPX页中的代码啊,就是不在codebehind那里面写,在aspx的HTML代码里写
      

  12.   

    to  x88(小东)  这好像没什么分别
    呵呵!
    客户段代码写在这里:SCP_NUMBER_ONLY_SCRIPT
    至于C#代码是否在codebehind好象都一样
    我给的代码是一个解决的办法,具体实现还是自己去写了
      

  13.   

    to:Octer(学习中......) 
     具体怎么个写法呀????????? 能不能贴一下简单的例子 C#的
      

  14.   

    对不起,打错了
    <script language="javascript">
    function check(){
       if (onfirm("请确认您上传的文件是图片文件!")== true)
            { return true}
       else 
            { return false}
    }
    </script>中onfirm改成confirm
      

  15.   

    回 ziying2004(小宝) :
    你的方法我试了一下,加了之后,与服务器端控件发生冲突,即出现错误信息,找不到该定义
      

  16.   

    回小宝:
      不是啊 我用的是要带 runat="server" 的控件
      

  17.   

    Button2是控件的id,试试
    <script language=javascript event=onclick for="Button2">
    if (confirm("Are you sure!")== true)
    { return true ;
    }else 
    { return false;
    }
    </script>