找回密码
 注册成为天翎用户
查看: 1869|回复: 9

保存表单前清空文本域的值

[复制链接]
luhuaayu 发表于 2012-9-4 11:04:10 | 显示全部楼层 |阅读模式
本帖最后由 purple 于 2012-9-4 14:31 编辑

原帖: http://www.teemlink.com/bbs/view ... &extra=page%3D2
这个是昨天下午的帖子  在此追加个问题   在保存表单之前我做了几个下拉框的清空操作  还有一个多行文本框也要清空
可是下拉框是清空了  多行文本框却没能清空
bess 发表于 2012-9-4 11:15:29 | 显示全部楼层
请问您的多行文框的清除值的脚本如何?
然后代码是否正常执行了,麻烦您用打印语句定位一下,到底是哪句代码没有执行,谢谢!
回复

使用道具 举报

 楼主| luhuaayu 发表于 2012-9-4 11:25:28 | 显示全部楼层
本帖最后由 luhuaayu 于 2012-9-4 11:28 编辑

回复 2# bess


    您好  测试结果在后台看是清空了  但是在清空后数据库却又把值已经保存了  很奇怪   清空了的下拉框的值没有被保存到数据库  可是文本域却被保存了
回复

使用道具 举报

purple 发表于 2012-9-4 13:21:19 | 显示全部楼层
请问您的多行文本框是不是有写值脚本?
回复

使用道具 举报

 楼主| luhuaayu 发表于 2012-9-4 14:16:14 | 显示全部楼层
回复 4# purple

  是的呢~
回复

使用道具 举报

purple 发表于 2012-9-4 14:17:18 | 显示全部楼层
ok,烦请贴出您的值脚本。谢谢。
回复

使用道具 举报

 楼主| luhuaayu 发表于 2012-9-4 14:18:55 | 显示全部楼层
回复 6# purple


    var rtn = "";
var date = getItemValueAsString("date");

var sql = "select t.DOMAINID, t.`NAME` as item_NAME from obpm.t_user t where t.DEFAULTDEPARTMENT = (select t.ID from obpm.t_department t where t.`NAME` = '秘书处') ORDER BY t.ID";
var innerSql = "";

var doc = queryBySQL(sql);

if(doc != null && doc.size() > 0)
{
  var innerDoc;
   
  for (var iter = doc.iterator(); iter.hasNext();)
  {
        var subdoc = iter.next();
    var theName = subdoc.getItemValueAsString("NAME");
       
        innerSql = "SELECT t.DOMAINID, t.FORMID, t.ITEM_REGISTER, t.ITEM_TIME, t.ITEM_GACONTENT FROM szstioa.tlk_garegister t where t.ITEM_REGISTER = '" + theName + "' and t.ITEM_DATE = '" + date + "' and t.ITEM_STATUS = '已发布'";

        innerDoc = queryBySQL(innerSql);
        if(innerDoc != null && innerDoc.size() > 0)
        {
          var theNames = "";
          var theTime = "";
          var theContent = "";
          for (var innerIter = innerDoc.iterator(); innerIter.hasNext();)
          {
             var innerSubDoc = innerIter.next();

                 theNames = innerSubDoc.getItemValueAsString("REGISTER");
                 theTime = innerSubDoc.getItemValueAsString("TIME");
                 theContent = innerSubDoc.getItemValueAsString("GACONTENT");
                 
                 if(theTime.length() == 4)
         {
           theTime = "0" + theTime;
         }
                 
                 if(theContent.length() >= 34)
                 {
                   theContent = theContent.substring(0,32) + "...";
                 }
                 rtn += "[" + theTime + "] " + "[" + theNames + "] : " + theContent + "\n";
          }
        }
  }
  rtn = rtn.substring(0, rtn.length - 2);  
  
}

rtn;
回复

使用道具 举报

purple 发表于 2012-9-4 14:27:39 | 显示全部楼层
呃,根据您的脚本,两种解决方案:1、在动作执行后脚本将多行文本框的清空,然后再doUpdate,直接更新数据库数据。2、在表单做个隐藏字段,或者用session,然后你的多行文本框,根据这个状态返回不同的值。
回复

使用道具 举报

 楼主| luhuaayu 发表于 2012-9-4 14:29:17 | 显示全部楼层
回复 8# purple


    根据您提供的方式 问题已经解决了  非常感谢~
回复

使用道具 举报

purple 发表于 2012-9-4 14:31:10 | 显示全部楼层
回复 9# luhuaayu


    解决了就好,感谢您的反馈。
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-14 05:12

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表