t1441332354 2018-06-07 07:22 采纳率: 71.8%
浏览 839
已采纳

关于数据库取值与三元运算符的问题

这是数据库的一张表
图片说明
里面的“DetectID”是存的字符串类型,现在在jsp页面上读取出来想把数字换成名称,所以运用三元运算符写了
“<%=ato.getDetectID()=="0"?"管理员":ato.getDetectID()=="1"?"AIS,":
ato.getDetectID()=="2"?"雷达应答器,":ato.getDetectID()=="3"?"示位标,":”(部分代码)然而在网页运行时呈现
图片说明
能帮忙看看我代码哪里出了问题吗?

或者不用三元运算符,还有没有其他的办法能把读取到的数字转换成文字?

  • 写回答

6条回答 默认 最新

  • Go 旅城通票 2018-06-07 08:18
    关注

    个人比较喜欢用js前端处理,给个示例给你参考 td用role自定义属性存储detectID值

     <td role="<%=ato.getDetectID()%>"></td>
    

    然后脚本放最后初始化数字对应的权限名称

    
    
    <script>
        var kvRole = { 0: '管理员', 1: 'AIS', 2: '雷达应答器', 3: '示位标'/*更加多数字对应的权限键值对*/ }
        function getRoleStr(v) {
            var s = '';
            var arr = v.split(',');
            for (var i = 0; i < arr.length; i++) s += ',' + kvRole[arr[i]];
            return s.substring(1);
        }
    
        var roles = document.querySelectorAll('td[role]');//获取所有权限td
        for (var i = 0; i < roles.length; i++) roles[i].innerHTML = getRoleStr(roles[i].getAttribute('role'));
    
    </script>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥30 ansible连接设备报错
  • ¥60 pmsampsize包取值问题
  • ¥15 波形合成电路的设计学习
  • ¥15 unity脚本挂不上
  • ¥15 数学建模数学建模需要
  • ¥20 Java Sound Api 调用Mixer.getLine偶现Line unsupported错误。
  • ¥15 使用cuda加速opencv运算但是报错AttributeError: module 'cv2.cuda' has no attribute 'getCudaEnabledDeviceCount'
  • ¥15 java输入输出异常
  • ¥15 三子连珠对弈小游戏制作
  • ¥15 C++扑克牌游戏的编程