#javascript #jquery #ipad #sharepoint #sharepoint-2010
#javascript #jquery #iPad #sharepoint #sharepoint-2010
Вопрос:
Я создаю форму на HTML-странице, и у меня возникают проблемы с отправкой изображения в папку документов SharePoint, метод, который я использую, отлично работает в Google Chrome на рабочем столе и успешно отправляет сообщения в папку SharePoint, но по какой-то причине не хочет работать в браузере AirWatch на iPad, и я не могу найти хорошую документацию по Airwatch. Я использую библиотеку javascript SharePointPlus для отправки изображения в SharePoint. Изображение успешно преобразовано в base64, и я могу распечатать строку base64 в текстовое поле на странице html.
Когда я нахожусь на iPad / Airwatch, я выбираю изображение, и строка base64 вставляется в текстовое поле, затем я нажимаю кнопку Отправки данных, и я не получаю предупреждение after: function, которое я установил, и изображение не отправляется в SharePoint. Документация SharePointPlus также довольно скудна.
Вот моя функция SharePointPlus CreateFile в javascript, которая запускается, когда я нажимаю отправить:
var fileName;
function changeHandler(inputElement){
var fileReader, file;
fileReader=new FileReader();
var fileList=inputElement.files;
file=fileList[0];
// console.log(file.name);
fileName = file.name;
fileReader.onload=load_handler;
fileReader.readAsDataURL(file);
}
function load_handler(event){
var url=event.target.result;
// removes data:image/jpeg:base64 from beginning of base64
url = url.substring(url.indexOf(',') 1);
// console.log(url);
fileInBase64 = url;
document.getElementById("log").value=fileInBase64;
}//end function load_handler
$("#submit_pic").click(function(){
//fileName is the base64 encoded image string
myImage = fileInBase64;
$SP().createFile({
content:myImage,
encoded:true,
destination:"http://example.com/folder/Code/myfile.jpg",
url:"/folder",
after:function(){alert('done');}
});
});
Редактировать: Теперь я думаю, что это как-то связано со строкой base64 на iPad, после проверки строки и попытки преобразовать ее обратно в изображение через веб-сайт, это работает неправильно … вот весь код, который захватывает файл, преобразует в base64 и пытается отправить его.
Если я предупреждаю myImage, я получаю очень большое окно предупреждения, которое охватывает высоту iPad без текста в нем. Похоже, что там что-то есть, но не совсем. Если я предупреждаю о жестко закодированной строке, она выглядит нормально.
Используемые технологии: SharePoint 2010 Jquery SPServices SharePointPlus AirWatch browser с Ipad Chrome на рабочем столе
Ответ №1:
Оказывается, размер изображения слишком велик. Если я сделаю снимок с помощью iPad, который увеличен, я смогу загрузить изображение просто отлично. Оно должно быть увеличено примерно наполовину. Не уверен, как еще это сделать, но пока это будет работать.