我正在使用带有ASP.Net 4.0的Uploadify和后端的通用处理程序。 现在我可以使用Uploadify的scriptData部分如果我只知道如何读取发布到Generic Handler的JSon,那么我选择通过查询字符串发送所需的数据,我通过对查询字符串进行硬编码来测试它的工作原理但是当我尝试使用val()选项获取复选框的值时,无论复选框是否被选中,它都只传递“on”的值。我也尝试过简单地使用$('#mainimg')。is(':checked')它没有给我任何东西。
$('#file_upload').uploadify({
'uploader': '/uploadify/uploadify.swf',
'script': '/services/Upload.ashx?ismain=' + $('#mainimg').val(), <--- HERE IS THE PROBLEM
'multi': false,
'fileExt': '*.jpg;*.gif;*.png',
'sizeLimit': 10000000,
'scriptAccess': 'sameDomain',
'cancelImg': '/uploadify/cancel.png',
'onAllComplete': function (event, data) {
alert(data.filesUploaded + ' files uploaded successfully!');
},
'onCancel': function (event, ID, fileObj, data) {
alert('The upload of ' + fileObj.name + ' has been canceled!');
},
'onError': function (event, ID, fileObj, errorObj) {
alert(errorObj.type + ' Error: ' + errorObj.info);
},
'onSelectOnce': function (event, data) {
alert(data.filesSelected + ' files were selected for upload.');
},
'auto': true
});
我已使用此
设置复选框的值$('#mainimg').click(function () {
if ($('#mainimg').is(':checked')) {
$('#mainimg').val('true');
}
else { $('#mainimg').val('false'); }
alert($('#mainimg').val());
});
我甚至尝试使用此代码设置变量
$('#mainimg').click(function () {
if ($('#mainimg').is(':checked')) {
checkboxStatus = false; ;
}
else { checkboxStatus = true; }
alert(checkboxStatus);
});
但即使我会使用警报对其进行测试,并且当它转到uploadify脚本时它会在警报中显示正确的数据,它只提供'false'的值
有谁能看到我在这里做错了什么?
答案 0 :(得分:0)
您是对的,复选框的值始终为“on”,因此如果选中复选框,则必须发送其他内容,即复选框的文本或其标签的值。
(...)'script': '/services/Upload.ashx?ismain=' + $('#mainimg').is(':checked')?'true':'false',