我想知道使用 JQuery 使隐藏字段中的 value 属性无效的最佳反向兼容方法。
谢谢!
笔记:
$('#MyHiddenField').val('');
还不够好。
我需要一个好的老式空值。
我想知道使用 JQuery 使隐藏字段中的 value 属性无效的最佳反向兼容方法。
谢谢!
笔记:
$('#MyHiddenField').val('');
还不够好。
我需要一个好的老式空值。
你不能。该value
属性始终包含一个字符串。如果您为它分配除字符串之外的任何内容,它将被转换为字符串。
那是因为HTMLInputElement
接口的value
属性是 type DOMString
。无论是否为hidden
输入,输入元素接口都会强制将任何设置为input
'value
属性的值设为 type string
,否则它会使最终用户无法使用输入元素 - 毕竟这是输入元素的目的。application/x-www-form-urlencoded
如果输入值不是字符串,也无法发出常规请求。
您可能正在寻找隐藏输入以外的其他内容,但是您可以在不对代码进行重大更改的情况下执行以下操作:在使用该值并将其分配给之前检查该值是否为空字符串null
:
var v = $('#MyHiddenField').val();
if (v === '') v = null;
//use v as null in your code now
如果你需要它来发布到服务器端,操作是一样的。将其作为空字符串发布,然后检查发布的数据是否为空字符串并将其分配给null
.