Функция document.write()
принимает параметры типа string. JSON.parse()
преобразует строку JSON в формат объекта, который document.write()
не может понять. Таким образом, он печатает typeOf(data)
insted. Результатом typeOf(data)
является строка [Object object]
, поэтому печатается [Object object]
.
Использовать document.write(JSON.stringify(data));
Документы можно ссылать на MDN , в котором говорится, что он принимает параметры строкового типа.
Я не уверен, может ли это помочь Вам, но метод DoDragDrop возвращает заключительное значение DragDropEffects.
var ret = DoDragDrop( ... );
if(ret == DragDropEffects.None) //not successfull
else // etc.
Еще не может добавить комментарий, таким образом, другой ответ. Я был также удивлен, когда я видел впервые, которым DoDragDrop называют синхронно, и он так или иначе не делает заморозил UI.
Но материал копии/перемещения, которому я верю, совершенно логичен. Можно ли указать позволенные эффекты при вызове метода DoDragDrop в исходном приложении, и это - все, что важно для Вас. Как целевое приложение будет обрабатывать и использовать данные, это до него.
А-ч, я думаю, что у меня есть он. Оказывается, что вызов к DoDragDrop на самом деле синхронен (как Ламе), и возвращает значение DragDropEffects
, который установлен на None
если op перестал работать. Таким образом, в основном это означает, что приложение (или по крайней мере поток UI) будет заморожено так долго, как пользователь посреди перетаскивания. Это не кажется очень изящным решением меня.
Хорошо cz_dl, я вижу Вас просто, отправил ту самую вещь, таким образом, я дам Вам ответ.
Это я не понимаю хотя: как место назначения может определить, должен ли op быть перемещением или копией? Разве это не должно быть до исходного приложения?