ページ上のすべてのテキストボックスとドロップダウンリストを検出し、ウィンドウのアンロード時に変更があるかどうかを確認しようとしています。問題は、テキストボックスは検出できますが、ドロップダウンリストは検出できないことです。これが私のやり方です。
$(document).ready(function () {
var warnMessage = 'Warning: You have unsaved changes.';
$('input:not(:button,:submit),input[type="text"],select').each(function () {
var elem = $(this);
// Save current value of element
elem.data('oldVal', elem.val());
// Look for changes in the value
elem.bind("propertychange keyup input paste", function (event) {
// If value has changed...
if (elem.data('oldVal') != elem.val()) {
window.onbeforeunload = function () {
if (warnMessage != null) return warnMessage;
else warnMessage = 'Warning: You have unsaved changes.';
}
}
});
});
$('input:submit,#addLiquidFillButton,#addCommentButton,#addManualRegenButton,#addStateMileageButton').click(function (e) {
warnMessage = null;
});
});
追加情報。このコードを使用してドロップダウンリストを作成します:
<asp:DropDownList ID="LocationIdDDL" CssClass="ddl" runat="server" AutoPostBack="true"></asp:DropDownList>
「select」を追加するとすべてのドロップダウンリストがチェックされると思いますが、現在はそうではありません。何か案は?ありがとう!