我有一个值为“8”的隐藏字段,我从我的 asp.net mvc 控制器返回 json 数据,其中 templateId 的值为 8。
“8”不是 8。那很好,但我如何比较这两个值?
我有一个值为“8”的隐藏字段,我从我的 asp.net mvc 控制器返回 json 数据,其中 templateId 的值为 8。
“8”不是 8。那很好,但我如何比较这两个值?
在 JavaScript 中,您可以将两个变量与类型检查或不进行类型检查进行比较
例如
8 == '8' //true /* dont check type*/
8=== '8' //false /* check type*/
比较时不需要类型检查。所以你的代码可以正常工作。
既然你说你的代码不起作用。$("#TemplateId").text() 的值为'8'(显示在控制台中)。唯一可能的问题是 response.templateId 不等于 8。
你试过parseInt($('#TemplateId').text())
吗?
您可以将parseInt()应用于从 text() 返回的字符串。
您始终可以使用“parseInt(str, 10)”将“8”解析为整数
而不是写:
if( response.templateId == $('#TemplateId').val())
{
// never hit here
}
我这样做了,它奏效了:
var selectedTemplateId = $('#TemplateId').val();
if (response.templateId == selectedTemplateId)
{
// it works
}
我也做了一个通用测试:8 和“8”是一样的:
if( 8 == "8")
{
// always hit here
}