关于函数参数传递的问题
代码如下,我想要点击“上传图片”按钮之后直接运行uploadPhoto()函数,但是没有用,而当我把uploadPhoto()放在onPhotoURISuccess()函数中,点击“从相册选择”按钮,运行uploadPhoto()函数时有效果,我估计是imageURI这个参数传不到onPhotoURISuccess()之外的uploadPhoto(),所以当uploadPhoto()在onPhotoURISuccess()内部时,uploadPhoto()可以有效,而独立在外直接运行时没效果,那么imageURI该怎么传递呢?imageURI好像是一个API的内部参数,不是我定义的,写onPhotoURISuccess时,直接就放在括号里面用
JavaScript 函数
function onPhotoURISuccess(imageURI) {
// 取消注释以查看图片文件的URI
// console.log(imageURI);
// 获取图片句柄
var largeImage = document.getElementById('largeImage');
// 取消隐藏的图像元素
largeImage.style.display = 'block';
// 显示拍摄的照片
// 使用内嵌CSS规则来缩放图片
largeImage.src = imageURI;
//uploadPhoto(imageURI);
}
function getPhoto(source) {
// 从设定的来源处获取图像文件URI
navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50,destinationType: destinationType.FILE_URI,sourceType: source });
}
function uploadPhoto(imageURI) {
var options = new FileUploadOptions();
options.fileKey="image";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType="image/jpeg";
var params = new Object();
params.value1 = "jpeg";
// params.value2 = "param";
options.params = params;
var ft = new FileTransfer();
ft.upload(imageURI, "http://192.168.1.200/xinshi/upload_image.php", win, fail, options);
}
<div data-role="dialog" id="logout">
<a href="#" data-role="button" onclick="uploadPhoto(imageURI);">上传图片</a>
<a href="#" data-role="button" data-theme="b" onclick="getPhoto(pictureSource.PHOTOLIBRARY);">从相册选择</a>
<div >
[解决办法]
好像是phonegap的上传文件的代码?