这是一个表单传值,但是我里面没有写判断,我想找一个方法如果我没有爱过值就返回到现在这个页面,不让500出现

错误及解决方法(8)
错误发生原因:实现页面与页面传值。我的做法是从当前页面传值到action中的方法中,再由该方法跳转到需传值的新页面,新页面获取值,再传到action中的另外一个方法,新页面获取到值了,但是向后台再次传数据的时候,值始终为null。
错误原因分析:新页面虽然获取到值,但是,当它执行新的操作时,session已经close掉了,因此action中的对象已经为空。这个时候就是要在页面传一个值给一个新的变量。
错误原因:表单中action带参数传值过程-- &HTTP Status 404 - No result defined for action com.action.FileAction and result input
错误原因分析:这种错误无疑是最让人抓狂的 ,没有详细的错误提示,直接一个找不到页面。
1、可能是粗心,struts配置文件中配置没有配好(看看是不是映射名不对应,有没有配映射)
2、表面上是映射没有对应好,实际上我的映射是配好了的,那么问题来了,到底是因为什么直接报404错误(也就是传说的找不到页面错误),连后台都没有进去,那么这个时候就可以看看是不是你页面是否写错了,我的错误是传值的时候 值的类型不匹配:&&s:hidden &name=&file.fileId& value=&file.fileId&&&/s:hidden& 在这个里面value是个string类型,file.fileId是integer类型,然后我&换成&s:hidden &name=&id& value=&file.fileId&&&/s:hidden&
这个地方的id是我在后台action中定义的String变量,我的想法是将value的值传给id再由id强转成integer类型,但是这样的话 value中的值就是file.fileId,无法强转。无意间看见了一个大神写的文章,用了他的方法之后我就实现了
& & &form action=&fileAction!updateFile& method=&post&&
&s:set name=&fileif& value=&file.fileId&&&/s:set&
& &s:hidden &name=&id& value=&%{fileif}&&&/s:hidden&
文件名:&input name=&updatefile.fileName&&
作者:&input name=&updatefile.fileAuthor&&&
时间:&input name=&updatefile.fileCreateTime&&&
&input type=&submit& value=&修改&&
&s:debug&&/s:debug&
&&相关文章推荐
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2206次
排名:千里之外
(1)(6)(1)(1)(1)(1)(1)本帖子已过去太久远了,不再提供回复功能。【图片】从一个form1给另一个form2传值,为什么在form2的label中不显示了【c#吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:106,515贴子:
从一个form1给另一个form2传值,为什么在form2的label中不显示了收藏
form1form2form1代码:form2代码:运行后结果:(为什么label没有变成“用户名+登陆”字样)
c#O基础学习中心「需高中以上」c#,达内总监授课,免费试学!达内IT培训,专设c#学习课程,「入门+精通」,一步全搞定!学习+就业!
请问哪里错了啊?
private string username改成public string username
字段定义成私有的了
public string username放在form1里,form1点击button_click()事件里username = textBox1.text.trim();form2的load事件里:form1 f = new form1();label1.text = f.username + "登录";你把username放在form2里,肯定无法得到form1里的控件值,username就为null,null+字符串结果还是Null,所以登录两字不显示;PS:手打代码,请无视大小写错误PS2:兄弟,登录的录字写错了,这里不是诺曼底,哇哈哈
测试了下你的代码,也可以实现传值的,一开始我想当然了,抱歉
我也测试了,这段代码没问题 ,和是不是模式化打开也没关系
你调试一下看看form2加载事件
在红点那点一下,设置断点,然后运行,看程序有没有在这句代码这暂停
c#程序设计?计算机学校是技能+学历+保薪就业,住宿食堂,操场一体化校园模式!c#程序设计,北大青鸟IT学院更专业!
那句执行完成后鼠标放到TEXT上看看值是多少
F10单步执行
是不是时间没绑定上去,试试吧load的语句翻放到构造函数的最后
Form1:private void button1_Click(object sender, EventArgs e)
Form2 fr2 = new Form2();
fr2.Show(this);
}Form2:private void Form2_Load(object sender, EventArgs e)
Form1 fr1 = (Form1)this.O
this.label1.Text=((TextBox)fr1.Controls["textBox1"]).T
private void button1_Click(object sender, EventArgs e)
this.Close();
}尼玛,贴吧也不添加代码格式,贴过来的代码好乱。这是我参考的别人的,我也学过这个知识点,不过忘记了。
public partial class Form1 : Form
public Form1()
InitializeComponent();
private void button1_Click(object sender, EventArgs e)
Form2 f2 = new Form2();
this.textBox1.Text = f2.Show(textBox1.Text);
f2.Show();
}--------------------------------------------------------public partial class Form2 : Form
public Form2()
InitializeComponent();
public Form1 F
set { f = }
public string Show(string s)
this.label1.Text =
private void Form2_Load(object sender, EventArgs e)
用委托加事件传递吧
PRIVATE STATIC STRING _USERNAME; PUBLIC STATIC STRING USERNAME{GET{RETURN _USERNAME}SET{_USERNAME=VALUE;}}A窗体PUB.USERNAME=THIS.TEXTBOX1.TEXT.TRIM();B窗体THIS.LABLE1.TEXT=PUB.USERNAME;
这个不用楼上这么麻烦,你直接把1里的值传到一个全局变量里,然后在用2去取这个值
因为form2的label是private
出这样的错误,是因为你没把窗体当做类来看待!有两个方法可以解决:一、在窗体2中保留窗体1的一个引用二、用委托
今天天气不错嚯!
public partial class Form2 : Form
public Form2(string p)
InitializeComponent();
private void Form2_Load(object sender, EventArgs e)
label1.Text =
80后都知道英语课本里经常出现的几个名字,比如李雷,韩梅梅之类的。昨天和舍友讨论,为何高中英语课本中不见那些名字?一哥们突然来一句:“他们是不是没考上高中?”
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或}

我要回帖

更多关于 如果我没有爱过 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信