我正在通过在交付方式选择框(cmbD_method)中添加“请选择...”选项进行一些基本的表单验证,然后确保用户选择了交付方式。我无法修改源代码,因此我的代码将验证添加到名为validateUserDataFields()的现有函数中。
但是,无论选择了什么选项,都会显示警告消息,并且控制台显示“Uncaught TypeError:无法读取属性'0'未定义”
我错过了什么?我的代码如下:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type='text/javascript'>
var delMeth = new Option('Please Select A Delivery Method', '0');
$(delMeth).html("Please Select A Delivery Method");
$("#cmbD_Method").append(delMeth);
$('#cmbD_Method').val(0);
$('#cmbD_Method').width($('#cmbD_Method').width() + 40);
var validate = validateUserDataFields;
validateUserDataFields = function () {
if ($('#cmbD_Method').val(0)) {
alert('Please Select A Delivery Method');
}
else {
validate(); // call the original function
}
};
</script>
答案 0 :(得分:0)
@Rongsir回答了问题的主要部分 - 我需要
if ($('#cmbD_Method').val() == '0')