JQuery版本從2.14升級到3.5.0后,收到如下錯誤,但我沒有完全明白問題是什么,有radio = event.target我在Cannot Read Properties of Undefined的定義中收到的錯誤(讀'目標') 誰能幫我解決?*
var testMethod = {
testSubMethod: function (event) {
var radio = event.target;
var isMultiInput = $('#MultipleInputYes').is(':checked');
if (isMultiInput) {
$('.divMultiInput').removeClass("dp-none");
$('.divMinMaxVal').addClass("dp-none")
$('#divMinMaxDate').addClass("dp-none")
$('#divRgxWarnMsg').addClass("dp-none")
$('#minValueInpt').val('');
$('#maxValueInpt').val('');
$('.divInputValUpper').addClass("dp-none");
$('[name=ValueType]').val('');
$('#inputValueTypeSelect').removeClass('required');
$('#inputValueTypeSelect').removeClass('customError');
}
else if (!isMultiInput || radio.value == undefined) {
$('.divMultiInput').addClass("dp-none");
$('.divMinMaxVal').removeClass("dp-none");
$('#divMinMaxDate').removeClass("dp-none");
$('#divRgxWarnMsg').removeClass("dp-none")
$('.divInputValUpper').removeClass("dp-none");
$('[name=ValueType]').val('1');
$('#inputValueTypeSelect').addClass('required');
$('#divWarnMsg').css("display", "inherit");
$('#placeHolderInpt').val('');
$("#maskInpt").select2("val", "");
if (radio.value == 'false') {
$('#divInputValueType').prop('disabled', false);
$('#divInputValueType').attr('style', '');
}
$('#htmlEditorDiv').css("display", "inherit");
$('#useMultiLineDiv').css("display", "inherit");
$("#Tags").tagit("removeAll");
}
},
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>
<div class="radio radio-success">
<input type="radio" id="MultipleInputYes" value="true" name="IsMultiInput" onchange="testMethod.testSubMethod(this)">
<label for="MultipleInputYes"> Yes</label>
</div>
<div class="radio radio-success">
<input type="radio" id="MultipleInputNo" value="false" checked="checked" name="IsMultiInput" onchange="testMethod.testSubMethod(this)">
<label for="MultipleInputNo">No</label>
</div>
uj5u.com熱心網友回復:
testMethod.testSubMethod(this) this - 在你的情況下參考 html 物件。
所以可能會改變
testSubMethod: function (event) {
var radio = event.target;
像這樣的事情可能會解決你的問題
testSubMethod: function (el) {
var radio = el;
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/379019.html
