我在javascripts中有函数
$(document).ready(function () {
if ($("#ProductName").val().toString() == "") {
$("#pricingSectionDisplay").hide;
$("#pricingSectionProductName").val("");
}
else {
$("#pricingSectionDisplay").show;
$("#pricingSectionProductName").val($("#ProductName").val());
}
if ($("#PackSize").val().toString() == "") {
$("#pricingSectionDisplay").hide;
$("#pricingSectionPackSize").val("");
}
else {
$("#pricingSectionDisplay").show;
$("#pricingSectionPackSize").val($("#PackSize").val());
}
});
function pricingSectionDisplay() {
if ($("#ProductName").val().toString() == "") {
$("#pricingSectionDisplay").hide;
$("#pricingSectionProductName").val("");
}
else {
$("#pricingSectionProductName").val($("#ProductName").val());
}
if ($("#PackSize").val().toString() == "") {
$("#pricingSectionDisplay").hide;
$("#pricingSectionPackSize").val("");
}
else {
$("#pricingSectionPackSize").val($(PackSize).val());
}
}
实际上我需要在文本框
时填写标识为pricingSectionProductName
和pricingSectionPackSize
的标签
@Html.TextBoxFor(m => m.ProductName, new { @class = "form-control", @id = "ProductName", onblur = "pricingSectionDisplay()" })
和
@Html.TextBoxFor(m => m.PackSize, new { @class = "form-control", @id = "PackSize", onblur = "pricingSectionDisplay()" })
已经填满。
我的代码似乎没有达到此目的。 我做错了什么?
答案 0 :(得分:1)
所有方法调用都是这样的:
$("#pricingSectionDisplay").hide;
应该是:
$("#pricingSectionDisplay").hide();
此外,.val()
已经返回一个字符串,因此没有理由在其上调用.toString()
。
如果您需要进一步的帮助,请发布实际相关的HTML(浏览器看到的是视图/来源,而不是模板)。
答案 1 :(得分:0)
助手的ID应为id='...'
。您无需添加@
,因为id
不是保留关键字。所以写
@Html.TextBoxFor(m => m.ProductName,
new { @class = "form-control", id = "ProductName",
onblur = "pricingSectionDisplay()" })
而不是
@Html.TextBoxFor(m => m.ProductName,
new { @id = "ProductName",
onblur = "pricingSectionDisplay()" })
此外,您必须调用此show()
而不是show
的show方法
与隐藏相同,请写hide()
而不是hide