【发布时间】:2019-05-22 20:41:13
【问题描述】:
我正在尝试使用 asp.net 和 jquery 创建一个基本的计算器。我通过单击“计算”按钮进入 JQuery 函数。我想使用 myInt 根据我从中获得的价值来做其他事情。但 myInt 总是返回 undefined 或空字符串。
我看到其他人在这里也有同样的问题。大多数解决方案都说 OP 在某处复制了一个 id。我检查了又检查,找不到我已经做到了。我还会遇到什么其他问题?
<form id="calculator" asp-action="CalcEvens">
<div asp-validation-summary="ModelOnly" class="text-center"></div>
<div class="form-group">
<label asp-for="myInt" class="control-label">Enter a numba</label>
<input asp-for="myInt" class="form-control" min="1" max="999" required="required" type="number" />
<span asp-validation-for="myInt" class="text-danger"></span>
</div>
<div class="form-group">
<input type="button" id="Calculate" value="Calculate" />
</div>
</form>
$(document).ready(function () {
var myInt = $("#myInt").value;
$('#Calculate').on('click', function () {
console.log(myInt);
});
});
我需要将 myInt 文本框中的输入内容打印到控制台。相反,我不断得到“未定义”。
【问题讨论】:
-
第一个:使用
.val()而不是.valuevar myInt = $("#myInt").val();.. 第二个:要获得点击值,使用点击内部的var myInt=.....行而不是点击外部.. 问题是当你试图获取myInt你得到它 onload 所以它会读取 undefined 或 empty 但它不会捕获新值..而且你的代码中没有 idmyInt