用户
 找回密码
 入住 CI 中国社区
搜索
查看: 7276|回复: 10
收起左侧

[视图] 有无更好和解决方法

[复制链接]
发表于 2008-4-10 16:43:22 | 显示全部楼层 |阅读模式
我主要想js 和 页面也分离开

<html>
<head>
<title>增加</title>
<script src="<?php echo base_url()?>script/jquery.js"></script>
<script src="<?php echo base_url()?>script/common.js"></script>
<script>
$(function(){
$("#but").click(function(){
  if($("#UserName").val()=='')
  {
   alert('请输入姓名!');
  }
  else if ($("#PassWord").val()=='')
  {
   alert('请输入密码!');
  }
  else if($("#Age").val()=='')
  {
   alert('请输入年龄!');
  }
  else
  {
   $.post("<?=$base_url?>Blog/Add",
     {UserName: $("#UserName").val(), PassWord: $("#PassWord").val(), Age: $("#Age").val()},
     function(data){
      if(data>0){
       alert('数据已提交!');
       window.location.href="<?=$base_url?>";
      }
     }
      );
  }
});
})
</script>
</head>
<body>
<form  id="save" action="<?=$base_url?>Blog/Add" method="POST">
姓名:<input type="text" name="UserName" id="UserName" val
 楼主| 发表于 2008-4-10 16:56:39 | 显示全部楼层

有没有更好的写法

我主要想实现页码 和js代码完全分离

<html>
<head>
<title>增加</title>
<script src="<?php echo base_url()?>script/jquery.js"></script>
<script src="<?php echo base_url()?>script/common.js"></script>
<script>
$(function(){
$("#but").click(function(){
  if($("#UserName").val()=='')
  {
   alert('请输入姓名!');
  }
  else if ($("#PassWord").val()=='')
  {
   alert('请输入密码!');
  }
  else if($("#Age").val()=='')
  {
   alert('请输入年龄!');
  }
  else
  {
   $.post("<?=$base_url?>Blog/Add",
     {UserName: $("#UserName").val(), PassWord: $("#PassWord").val(), Age: $("#Age").val()},
     function(data){
      if(data>0){
       alert('数据已提交!');
       window.location.href="<?=$base_url?>";
      }
     }
      );
  }
});
})
</script>
</head>
<body>
姓名:<input type="text" name="UserName" id="UserName" value=""><br />
密码:<input type="text" name="PassWor
发表于 2008-4-10 17:09:06 | 显示全部楼层
JS 也要分离?那你的 DOM 怎么办?用 class 吗?
还真没想过 JS 也要分离,呵呵~~
发表于 2008-4-10 17:36:59 | 显示全部楼层
楼主是想要实现表单验证的功能吗?
validation的js很多,实现也比较简单
please google之
 楼主| 发表于 2008-4-11 09:54:02 | 显示全部楼层
validation

不要,还是习惯自己用jquery写,谢谢
 楼主| 发表于 2008-4-11 10:02:06 | 显示全部楼层
我主要想 js脚本不放在页面里,全部放在js文件里, 页面引入,这样不是看上去好多了,但现在用框架的的话
$.post("<?=$base_url?>Blog/Add",
     {UserName: $("#UserName").val(), PassWord: $("#PassWord").val(), Age: $("#Age").val()},

提交路径就得这样写,要在js脚本里混写php,感觉不好,有没有什么好写法 (不想写死路径 http://www.zzd.com/Blog/Add/)

[ 本帖最后由 zzdboy 于 2008-4-11 10:06 编辑 ]
发表于 2008-4-11 10:19:12 | 显示全部楼层
哦,你说的是这个意思啊,那我可以给你出一个主意,就是用 JS 变量。
也就是在 PHP 里动态生成 JS 变量的值,然后在 .js 文件里直接使用这个 JS 变量就可以了。
 楼主| 发表于 2008-4-11 10:35:26 | 显示全部楼层


<html>
<head>
<title>增加</title>
<script>var base_url = '<?=$base_url?>';</script>
<script src="<?php echo base_url()?>script/jquery.js"></script>
<script src="<?php echo base_url()?>script/common.js"></script>  //js验证
</head>

<body>
姓名:<input type="text" name="UserName" id="UserName" value=""><br />
密码:<input type="text" name="assWord" id="assWord" value=""><br />
年龄:<input type="text" name="Age" id="Age" value=""><br />
<input type="button" id="but" value="提交">
</body>
</html>
发表于 2008-4-11 11:22:47 | 显示全部楼层

回复 6楼 的帖子

我所说的validation大多都是基于prototype或者jquery的
也完全满足你提的要求
html中一点js都不用写
发表于 2008-4-11 11:27:36 | 显示全部楼层
没错,有的验证js,只需要写 class 就行,根本不用写一行 js 代码。

本版积分规则