问题描述
有一表单提交页面a中有两输入框和一个连接.点击链接window.open弹出一个子窗口.提交页面a时对输入框进入判断如果有空的输入框提示并返回.问题是:如果没有点击连接提交判断为空返回不会刷新页面框中的内容不会清空,如果点击连接提交判断为空返回就会刷新页面把输入框的内容清空了.有什么办法点击了链接提交页面a判断为空返回也不刷新刷面.谢谢啦~!
解决方案
解决方案二:
好拗口的问题!window.open是javascript端代码,是不会对页面A产生影响的,你这个问题不是弹出页面造成的。
解决方案三:
这个如果用validator判断并且enableclientscript,页面时不会刷新的。即便是用写js代码来判断,页面也不应该会刷新。如果你的页面刷新了说明页面有postback,并且你的Page_Load事件里有清空输入框的代码.如果是这样的话,可以用下面的代码来判断页面来源,如果是外来的话就清空你的文本框,如果是postback的话就不要清空文本框就是了if(!Ispostback){//清空文本框}不知这个能不能解决你的问题。
解决方案四:
用js判断输入框是否为空,在链接那里加个onclick="returnisnull();";返回true的时候再window.open不就好了
解决方案五:
用js判断输入框是否为空,在链接那里加个onclick="returnisnull();";返回true的时候再window.open不就好了这种行不通的.1,那些输入框都是后台自动生成的.2,别人也可以先点击连接在在输入框中输入内容.我想用模态窗口弹出.可是不知怎么的第一次弹出模态窗口可以执行Page_Load第二次弹出窗口它就不执行Page_Load函数.真郁闷~~!
解决方案六:
为什么点击A窗口的一个连接弹出新窗口后,在点击A窗口的一个按钮就对窗口进行了刷新呢.按钮点击函数放的是this.Response.Write("<scriptjavascript='javascript'>history.back(-1);</script>");
解决方案七:
唉~~!谁能帮一下我呢.
解决方案八:
引用4楼gas_lb521的回复:
用js判断输入框是否为空,在链接那里加个onclick="returnisnull();";返回true的时候再window.open不就好了这种行不通的.1,那些输入框都是后台自动生成的.2,别人也可以先点击连接在在输入框中输入内容.我想用模态窗口弹出.可是不知怎么的第一次弹出模态窗口可以执行Page_Load第二次弹出窗口它就不执行Page_Load函数.真郁闷~~!
那是由于浏览器的缓存导致的,增加一个随机参数可以解决。yourURL.aspx?A=123&B=456&RAN=Math.Random();