次のスクリプトを使用して、フォームのコンテンツが変更されているかどうかを確認し、ユーザーが変更を保存せずに閲覧できないようにしています。
<script type="text/javascript">
var isDirty = false;
var msg = 'You have unsaved changes.';
$(document).ready(function(){
$(':input').change(function(){
if(!isDirty){
isDirty = true;
}
});
window.onbeforeunload = function(){
if(isDirty){
return msg;
}
};
});
</script>
現在、[保存]ボタンは次のようになっています。
<input type="submit" name="frmProjectAction" value="Save" onclick='selectAll(frmProjectResources,true);' />
これはほとんどの部分で機能していますが、2つの問題があります。
1.ユーザーがフォームの[保存]ボタンをクリックしても起動します。どうすればこれを防ぐことができますか?
2.フォームにあるTinyMCEテキストボックスの変更が検出されません。TinyMCEテキストボックスおよびフォームの他のすべてのフィールドの変更を検出するにはどうすればよいですか?
よろしくお願いします-デイブ