0
我正在開發一個android應用程序,通過GPRS和SMS發送到服務器端(通過短信網關)。現在我試圖通過GPRS發送數據,實際上我們的短信網關服務提供商給出了格式,如何發送數據到網關。格式是在數據之間有空格。在這種情況下,當我要發送像這種格式的數據時,url將空格編碼爲「+」符號,但是我想編碼空格,如「 %20「,因爲url不支持的方式,當我要直接在URL中給」%20「而不是」+「時,它的工作正常,否則會進入錯誤頁面。所以如何改變這個?想要做什麼?請幫助我...?提前致謝。如何爲url屬性中的空間設置%20?
的源代碼:
function AttForm()
{
var att=$('#attnce').val();
var uname=window.localStorage.getItem('uname');
if(att==0){
alert("Select Attendance");
return false;
}
var message="MRCC";
message += " "+"VIPATT";
message += " "+uname;
message += " "+att;
var networkState = navigator.network.connection.type;
var states = {};
states[Connection.UNKNOWN] = 'Unknown connection';
states[Connection.ETHERNET] = 'Ethernet connection';
states[Connection.WIFI] = 'WiFi connection';
states[Connection.CELL_2G] = 'Cell 2G connection';
states[Connection.CELL_3G] = 'Cell 3G connection';
states[Connection.CELL_4G] = 'Cell 4G connection';
states[Connection.NONE] = 'No network connection';
if(states[networkState]==states[Connection.NONE]){
window.plugins.sms.send(09192939495,message,function(){
alert('Message sent successfully');
},
function (e) {
alert(e);
});
}
else{
$.ajax({
url:'http://aaa.com/test/webservice.php',
type:'POST',
data:{type:'VIPATT',message:message},
dataType:'jsonp',
jsonp:'callback',
success:successData,
error:function(){
alert("error")
}
});
function successData(data){
var response=data.message;
alert(response);
$('#att').hide();
$('#main_menu').delay(500).fadeIn(1000)
}
}
}
網址是這樣的:
http://aaa.com/test/webservice.php?callback=jQuery16006898061116226017_1343803442450&type=VIPATT&message=MRCC+VIPATT+RSA+2&_=1343803455743:1
在上面的網址,你可以看到在attributes.but之間的+符號,我想20%,而不是在+ symbol.how得到這個?
您需要SMS插件或jQuery ajax的幫助嗎? – Bergi 2012-08-01 06:55:29
'+'是應該正確處理的URL的標準。如果你使用'POST',你怎麼得到一個URL? – 2012-08-01 06:58:57
甚至嘗試過GET方法,也就是隻帶+符號。 – cheliyan 2012-08-01 07:10:32