javascript - 隐藏
如果 innerHTML 为“0”或为空,则为元素
问题描述
我正在尝试制作一个简单的计算器,但我被卡住了;我需要隐藏一些元素。我的代码显示在下面的注释中。
function ekogroszek() {
var p = document.getElementById("powierzchnia").value;
var w = document.getElementById("wysokosc").value;
var k = p * w;
var e = 7.8;
var s = k * e;
document.getElementById("wynik").innerHTML = s;
}
$('#wysokosc').keypress(function(event) {
if (((event.which != 46 || (event.which == 46 && $(this).val() == '')) ||
$(this).val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
event.preventDefault();
}
}).on('paste', function(event) {
event.preventDefault();
});
$('#powierzchnia').keypress(function(event) {
if (((event.which != 46 || (event.which == 46 && $(this).val() == '')) ||
$(this).val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
event.preventDefault();
}
}).on('paste', function(event) {
event.preventDefault();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
<span>First field</span>
<input class="polekalkulacji" type="text" id="powierzchnia" name="powierzchnia" placeholder="np. 120">
</div>
<div>
<span>Second</span>
<input class="polekalkulacji" type="text" id="wysokosc" name="wysokosc" placeholder="np. 2.8">
</div>
<button onclick="ekogroszek()">Calculate</button>
<!--- Show below elements only if number (p id=wynik) is bigger than: "0" and field is filled --->
<p id="zapotrzebowanie">Result is:</p>
<p type="text" id="wynik"></p>
如您所见,仅当 id=wynik 已填充且大于 0 时,我才需要显示这两个“p”元素。我将如何执行此操作?
解决方案
如果您的目标是保持它们隐藏,直到它们被写入任何内容,并且它的值大于 0,那么实现它的最佳方法是默认隐藏它们:
<p id="zapotrzebowanie" style="display: none;">Result is:</p>
<p type="text" id="wynik" style="display:none;"></p>
当你给它们写 HTML 时,用 jQuery 显示它们:
function ekogroszek() {
var p = $("#powierzchnia").val();
var w = $("#wysokosc").val();
var k = p * w;
var e = 7.8;
var s = k * e;
document.getElementById("wynik").innerHTML = Math.trunc(s);
if(s>0){
$("#zapotrzebowanie").show();
$("#wynik").show();
}
}
您可以在此小提琴中检查代码的工作版本:
推荐阅读
- python - 如何在代码中更改不和谐机器人头像 [python]
- database - 如何在flutter中将值插入到sqflite数据表的特定行中
- python - Pandas 解析文本数据并分配列
- docker - 如何在自定义网络上允许对 Docker 容器的完全入站和出站 Internet 访问?
- python - 使用一个不带变量的 for 循环查找字符串中的重复字符
- iis - IIS 服务器配置 SignalR - WebSocket
- r - R:单变量的幂曲线
- python - 骰子损失变化(平均,每个块的最大值)
- java - 如何在android studio中显示所有文件和文件夹,如文件管理器
- postgresql - FeathersJS 连接到 PostgreSQL 时出错