You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Wix Velo中下拉选CHART JSON时文本框无法显示JSON的解决方法

解决Wix下拉菜单选择CHART JSON时显示item2而非JSON字符串的问题

问题原因

直接把JSON.stringify(data_chart)生成的长JSON字符串作为下拉选项的value字段,会触发Wix Dropdown组件的隐性限制——过长或复杂的字符串会被组件自动替换为默认的item标识(比如你看到的"item2"),而普通短字符串则能正常识别。

解决方案

不要将完整JSON字符串存在下拉选项的value里,改用简短标识关联对应数据,在选择事件中根据标识获取并展示JSON内容。

修改后的代码实现

  1. 保留原JSON数据定义:
var data_chart = {"data":{"labels":["_2024_03_09","_2024_03_10","_2024_03_11","_2024_03_12","_2024_03_13","_2024_03_14","_2024_03_15"],"datasets":[{"label":"10JiFG1L7Y","type":"line","data":[0,0,0,0,0,0,802],"backgroundColor":"rgba(173,118,240,0.2)","borderColor":"rgba(173,118,240,1)","borderWidth":1},{"label":14029,"type":"line","data":[0,22,0,0,16,0,36],"backgroundColor":"rgba(29,22,1,0.2)","borderColor":"rgba(29,22,1,1)","borderWidth":1}],"customization":{"borderWidth":1}}
  1. 更新下拉菜单选项,用简短标识作为value:
$w("#dropdown2").options = [
    { label: "SQL", value: "no-code" },
    { label: "CHART JSON", value: "chart-json" }
];
  1. 调整下拉选择事件处理逻辑:
export function dropdown2_change(event) {
    const selectedValue = $w("#dropdown2").value;
    if (selectedValue === "chart-json") {
        // 可选:加null和2格式化JSON,提升可读性
        $w("#textBox1").value = JSON.stringify(data_chart, null, 2);
    } else {
        $w("#textBox1").value = selectedValue;
    }
}

补充说明

  • 用简短标识替代长JSON字符串作为value,完全避开组件对值的长度限制问题
  • JSON.stringify的第二个和第三个参数用于格式化输出,去掉的话会输出紧凑的JSON字符串,按需选择即可

内容的提问来源于stack exchange,提问作者idan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 05:13:12