【发布时间】:2023-03-07 07:52:01
【问题描述】:
不幸的是,我无法创建 jsFiddle,因为这需要返回 HTML 的有效 URL,但关键是我正在使用输入掩码,它在执行 $.load() 后停止工作
我认为是我对这个功能不太了解。
脚本:
(function () {
isa.uk.HpiLookup = (function () {
function HpiLookup() { }
HpiLookup.prototype.setupEventHandlers = function () {
return $('#hpiLookupContainer').on("click", "#vehicleRegistrationSearchButton", this.onVehicleRegistrationSearchButton);
};
HpiLookup.prototype.setupInputMasks = function () {
$('#VehicleRegistrationNumber').inputmask("#######", { "placeholder": "" });
};
HpiLookup.prototype.onVehicleRegistrationSearchButton = function (event) {
event.preventDefault();
return $('#hpiLookupContainer').load(
GetVehicleByRegistrationNumberUrl,
{
VehicleRegistrationNumber: $('#VehicleRegistrationNumber').val()
},
this.setupInputMasks);
};
return HpiLookup;
})();
}).call(this);
Index.cshtml:
<div id="hpiLookupContainer">
<input id="VehicleRegistrationNumber" type="text">
<button id="vehicleRegistrationSearchButton" type="button">Search</button>
</div>
<script type="text/javascript">
var GetVehicleByRegistrationNumberUrl = '@Url.Action("GetVehicleByRegistrationNumber", "Vehicle")';
var hpiLookup = new isa.uk.HpiLookup();
hpiLookup.setupEventHandlers();
hpiLookup.setupInputMasks();
</script>
我尝试以这种方式使 $.load() 回调 setupInputMasks,但它不会。 如何在jQuery.load() 之后重新应用事件绑定?
【问题讨论】:
-
追随
this的命运让我脑筋急转弯。
标签: jquery