LIST BOX 联动的实现

有两种方式实现联动:
1、  USER-COMMAND
2、 AT  SELECTION-SCREEN  ON  VALUE-REQUEST  FOR listbox名称

例一:
REPORT  zlm_listbox_02 .

*&---------------------------------------------------------------------*
*&宏定义,填充下拉框
*&---------------------------------------------------------------------*
DEFINE fill_list .
    value - key   &1 .                          "个就是变量下拉框的值
    value - text  &2 .                          "这个是text
    append  value  to &3 .
END-OF-DEFINITION .

*&---------------------------------------------------------------------*
*&LIST-BOX 变量定义
*&---------------------------------------------------------------------*
TYPE-POOLS : vrm                                                 "存放combobox内容的type pool
DATA : name              TYPE vrm_id ,                                   list box的名称
            list_ctry    TYPE vrm_values ,                               list box的值
            list_city    TYPE vrm_values ,                               list box的值
            value       LIKE  LINE  OF list_ctry                        list box的结构
*&---------------------------------------------------------------------*
*&屏幕定义
*&---------------------------------------------------------------------*
PARAMETERS : p_ctry  TYPE char10  AS LISTBOX  VISIBLE  LENGTH  15  USER-COMMAND zctry .
PARAMETERS : p_city  TYPE char10  AS LISTBOX  VISIBLE  LENGTH  15  USER-COMMAND zcity .


*&---------------------------------------------------------------------*
*&初始化
*&---------------------------------------------------------------------*
INITIALIZATION .
    PERFORM zform_fill_ctry .

*&---------------------------------------------------------------------*
*&根据所选国家,显示城市
*&---------------------------------------------------------------------*
AT  SELECTION-SCREEN .
    CASE sy -ucomm .
        WHEN  'ZCTRY' .
            PERFORM zform_fill_city .
        WHEN  'ZCITY' .
            MESSAGE p_city  TYPE  'I' .
        WHEN  OTHERS .
    ENDCASE .


*&---------------------------------------------------------------------*
*&      Form  zform_fill_city
*&---------------------------------------------------------------------*
      text
*----------------------------------------------------------------------*
FORM zform_fill_city .
    DATA : value  LIKE  LINE  OF list_ctry                        list box的结构
    READ  TABLE list_ctry  INTO  value   WITH  KEY  key p_ctry .

    REFRESH  list_city .

    IF  value - key  'CH' .
        fill_list  'BJ'  '北京' list_city .
        fill_list  'TJ'  '天津' list_city .
    ENDIF .
    IF  value - key  'EN' .
        fill_list  'LD'  '伦敦' list_city .
    ENDIF .
    IF  value - key  'US' .
        fill_list  'LSJ'  '洛杉矶' list_city .
        fill_list  'HSD'  '华盛顿' list_city .
    ENDIF .
    "调用函数显示listbox里面的值
    CALL  FUNCTION  'VRM_SET_VALUES'
        EXPORTING
            id      'P_CITY'                                        PARAMETERS's Name
            values  list_city .
ENDFORM .                     "zform_fill_city

*&---------------------------------------------------------------------*
*&      Form  zform_fill_ctry
*&---------------------------------------------------------------------*
      text  填充国家
*----------------------------------------------------------------------*
FORM zform_fill_ctry .

    REFRESH  list_ctry .

    fill_list  'CH'  '中国' list_ctry .
    fill_list  'EN'  '英国' list_ctry .
    fill_list  'US'  '美国' list_ctry .

    "调用函数显示listbox里面的值
    CALL  FUNCTION  'VRM_SET_VALUES'
        EXPORTING
            id      'P_CTRY'                                       PARAMETERS's Name
            values  list_ctry .
ENDFORM .                     "zform_fill_ctry


例二:
变动很小
 INITIALIZATION.
   PERFORM zform_fill_ctry.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_ctry.
  PERFORM zform_fill_city.

或者
AT  SELECTION-SCREEN  OUTPUT  .
    PERFORM zform_fill_ctry .

AT  SELECTION-SCREEN  ON  VALUE-REQUEST  FOR p_ctry .
    PERFORM zform_fill_city .

或者直接

AT  SELECTION-SCREEN  ON  VALUE-REQUEST  FOR p_ctry .
    PERFORM zform_fill_ctry .
    PERFORM zform_fill_city .


但是出现了个问题,
就是在我变动国家后,城市框还显示上传选择的城市的key值
LIST <wbr>BOX <wbr>联动的实现

一直没解决,哪位知道怎样解决,请留言,谢谢
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用的内容,这段引用中包含了一些Vue.js代码和HTML代码,并讨论了换行符和空格在网页中的使用。其中,引用是关于添加和还原换行符的方法,引用是关于在编辑数据时获取详情和使用textarea的示例代码,引用是关于HTML中空格的处理和字符实体的使用。 问题中提到的&nbsp;是HTML中表示空格的字符实体。HTML通常会自动截取多余的空格,不管你加多少空格,都被看做一个空格。为了在网页中增加空格,可以使用&nbsp;表示空格。此外,还有其他常用的字符实体,如<表示小于号,>表示大于号,&表示&符号,"表示双引号,等等。 需要注意的是,引用的内容中有一些HTML实体被转义了,所以在描述字符实体时需要参考编码转义后的字符。 根据给定的引用内容,我无法直接回答问题,因为问题中的信息不完整。请提供更具体的问题或补充说明,我将尽力为您提供帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [js+v-html+正则表达式去除所有& nbsp和html标签(& nbsp 换行 )](https://blog.csdn.net/xm_w_xm/article/details/91992754)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [html&nbsp;&nbsp;特殊字符(转)](https://blog.csdn.net/feiniu5566/article/details/13624619)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值