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

Django:如何在模板input标签的value属性中使用多个变量

解决Input标签Value属性中多个模板变量无法正常渲染的问题

嘿,我明白你遇到的困扰了——想在input的value里同时展示loan.amount和loan.currency两个变量,但现在要么只出第一个,甚至完全没输出。咱们来一步步把这个问题搞定!

首先,先揪出最核心的语法错误

你给出的loan对象有个明显的JSON语法问题:"currency": "UGX这里少了闭合的双引号,这会导致整个对象解析失败,模板引擎根本读不到你的变量,自然就没输出了。先把它修正成正确的格式:

const loan = { 
  amount: 200000, 
  due_date: "12/12/2021", 
  currency: "UGX" 
};

然后解决变量拼接的问题(分场景)

不同的模板引擎/前端框架,拼接变量的写法略有不同,给你列几种最常见的情况:

情况1:使用Handlebars/Mustache这类传统模板引擎

直接在value属性里用空格拼接两个变量就行,不过要确保模板引擎支持这种写法:

<input class="block" id="address" name="address" type="text" value="{{ loan.amount }} {{ loan.currency }}">

情况2:使用Vue.js

更推荐用v-bind结合模板字符串的写法,比插值语法更规范:

<input class="block" id="address" name="address" type="text" :value="`${loan.amount} ${loan.currency}`">

情况3:使用React

用JSX的模板字符串语法拼接:

<input className="block" id="address" name="address" type="text" value={`${loan.amount} ${loan.currency}`} />

关键提醒:你的input类型选错了!

你当前用的是type="number",但number类型的输入框只允许数字、小数点、正负号这类纯数字相关的字符,空格和货币代码UGX属于非法内容,浏览器会自动清空不符合格式的value,这也是变量显示不出来的重要原因。

如果就是要显示带货币的完整内容,把type="number"改成type="text"就好;如果需要保留数字输入的功能,建议把金额和货币分开展示——比如用两个input,或者在input旁边加一个显示货币的<span>{{ loan.currency }}</span>。

最后总结一下修复步骤

  1. 修正loan对象的语法错误,保证变量能被正确读取
  2. 把input的type从number改为text(如果要显示非数字内容)
  3. 根据你用的技术栈,选择对应的变量拼接语法

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.01 03:07:48