太荒谬了,搞不懂

woyaodubo 2017-12-29 05:44:27
只要是加载网页,不管是否点击Button1,都自动执行了C#后台方法add()。
为什么会这样? 我要点击才执行的啊。

    <script type="text/javascript">
$('#Button1').click(function () {
var f = "false";
if (f=="true") {
var a = '<%=add()%>';
} else {
alert("请完善信息");
}
});
</script>


        public string add()
{
SqlConnection mydb_onn = cs.mydb_conn;
mydb_onn.Open();
string sql = "insert into tb_用户 values('" + reg_user.Value + "','" + reg_name.Value + "','" + reg_password.Value + "',1)";
SqlCommand com = new SqlCommand(sql, mydb_onn);
if (com.ExecuteNonQuery() != 0)
{
return "1";
}
return "0";
}
...全文
102 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
天际的海浪 2017-12-29
  • 打赏
  • 举报
回复
是你没搞懂后台代码与前端代码的区别。 页面中的后台代码都是在服务器端先执行的。当页面传到客户端时后台代码已经不存在了,变成后台代码输出的结果。 你应该在点击时用ajax重新访问一个后台页面,在这个后台页面中执行add的代码。
functionsub 2017-12-29
  • 打赏
  • 举报
回复
'<%=add()%>'; 你这代码本来就是服务器去生成内容填在这里的。不信你页面打开后,看这里的JS代码是不是变成了var a = '1';或者var a = '0';
woyaodubo 2017-12-29
  • 打赏
  • 举报
回复
如果只是返回字符串, 点击才会执行后台方法。 如果后台方法里面是写数据库的, 点不点击,都照样执行,太奇怪了吧,什么玩意啊。
相关推荐
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2017-12-29 05:44
社区公告
暂无公告