我在頁面上的表格中有一組複選框。我想要做的是當用戶點擊複選框時,其值將打印在表格下方。多個值可以在線路被印刷,以 '+' 隔開:使用JavaScript創建基於複選框輸入的動態字符串
"a+b+c+d"
我有這樣的代碼在base_pro.html:
<html>
<head>
<title>{% block title %}Offer engineering{% endblock %}</title>
{% block css %}
<link rel="stylesheet" href="/static/css/reset-min.css" />
<link rel="stylesheet" href="/static/css/main.css" />
{% endblock %}
{% block script %}
<script src="/static/js/main.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="/static/js/my_jq.js"></script>
{% endblock %}
</head>
<body>
<div id="header">{% block header %}{% endblock %}</div>
<div id="messages-wrap">
<div id="messages">
{% for category, msg in get_flashed_messages(with_categories=true) %}
<p class="message flash-{{ category }}">{{ msg }}</p>
{% endfor %}
</div>
</div>
<div id="content">{% block content %}{% endblock %}</div>
<div id="footer">{% block footer %}{% endblock %}</div>
</body>
</html>
main.html中:
{% extends "base_pro.html" %}
{% block content %}
Hi {{ user.name }}!
<table style="width:100%">
<tr>
<th>v1</th>
<th>v2</th>
<th>v3</th>
<th>v4</th>
<th>v5</th>
</tr>
<tr>
<td><label><input type="checkbox" name="selected" value="a" class="offers" />a</label></td>
<td><label><input type="checkbox" name="selected" value="b" class="offers" />b</label></td>
<td><label><input type="checkbox" name="selected" value="c" class="offers" />c</label></td>
<td><label><input type="checkbox" name="selected" value="d" class="offers" />d</label></td>
</table>
{% endblock %}
my_js .js:
$("input[type=checkbox]").on("change", function(){
var arr = []
$(":checkbox").each(function(){
if($(this).is(":checked")){
arr.push($(this).val())
}
})
var vals = arr.join("+")
var str = vals
console.log(str);
})
我無法獲得該條款g當複選框被選中時顯示。我究竟做錯了什麼?
只是爲了更好地理解你的問題 - 通過「顯示」,你的意思是在主屏幕或控制檯上?它正確地打印到控制檯。 –
@J。陳主屏 –
你需要注入DOM中的連接字符串值明確 –