В итоге я добавил символы "в регулярное выражение Panos, чтобы избавиться от символов, сгенерированных сериализатором Microsoft для записи объектов во встроенный скрипт:
Так что, если у вас есть свойство в C # code-behind это что-то вроде
protected string JsonObject { get { return jsSerialiser.Serialize(_myObject); }}
И в вашем aspx у вас есть
Вы получите что-то вроде
var myObject = '{"StartDate":"\/Date(1255131630400)\/"}';
Обратите внимание на двойные кавычки.
Чтобы получить это в форме, которую eval будет правильно десериализовать, я использовал:
myObject = myObject.replace(/"\/Date\((\d+)\)\/"/g, 'new Date($1)');
Я использую Prototype , и чтобы использовать его, я добавил
String.prototype.evalJSONWithDates = function() {
var jsonWithDates = this.replace(/"\/Date\((\d+)\)\/"/g, 'new Date($1)');
return jsonWithDates.evalJSON(true);
}
По умолчанию QApplication закрывается, когда закрывается последнее основное окно (окно без родителя) (см. QApplication :: lastWindowClosed сигнал ), поэтому закрытие вашего MainWindow закрывает все.
Закрытие виджета не удаляет его, если только не установлен атрибут Qt :: WA_DeleteOnClose (см. QWidget :: close () ). Если вы просто хотите, чтобы ваши окна были закрыты, я думаю, вам нужно переопределить closeEvent (), чтобы вызвать close () для дочерних элементов.
Но если вы хотите удалить их при закрытии, установите атрибут Qt :: WA_DeleteOnClose. Дочерние элементы автоматически удаляются при удалении родителя.