2015-12-02 5 views
0

У меня есть сценарий, предоставленный мне другим разработчиком для отправки push-сообщений в мои приложения. Я хочу иметь возможность отправлять их с одной страницы на оба типа приложений, но не могу понять, как это сделать. Проблема в том, что у меня нет контроля над страницами на сервере, на который они отправлены. Если вы посмотрите на код, то только отличия в двух критических фрагментах кода - это действие формы, чтобы отправить их на каждую страницу сервера и имя идентификатора приложения ... другая информация остается прежней.Несколько Submit Actions

Я также нашел кусок JavaScript, чтобы представить в двух местах с одной кнопки, но не мог заставить его работать с обоими ...

Я знаю, от чтения, что я, вероятно, нужен массив ... Может кто-то пожалуйста, покажите мне код с ними в массиве с кнопкой отправки, чтобы отправить их на соответствующие страницы.

Заранее спасибо ...

EDITED

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
<script src="jquery-1.11.3.min.js"></script> 
<script type="text/javascript" src="../../ScriptLibrary/jquery-latest.pack.js"></script> 
</head> 

<body> 
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script> 
<form name="push" method="post" > 
<input name="pushmessage" type="hidden" value="HAIR EXTENSIONS "> 

<p align="center">Notification Message:<br /> 
<textarea style="width: 280px; height: 150px; margin-bottom: 30px;  font-family: Verdana, Geneva, sans-serif; border-color: #000; border-  width: 1px; resize: none;" name="pushmessage" id="push-message"> </textarea><br /> 

<input type='button' class="inputbtn" name='Submit' value='Push' onclick='sendFormData()' /> 
<form/> 

<script type="text/javascript"> 
function sendFormData() { 
    var formURL1 = 'http://apple/iPhone-message'; 
var formURL2 = 'http://google/android-message'; 
var postData1 =  {'publishersid':'appdeveloper','username':'myself','pass':'mypassword','appid':' CommunityApp-i','topics':'test'}; 
var postData2 =  {'publishersid':'appdeveloper','username':'myself','pass':'mypassword','ap pid':'CommunityApp','topics':'test'}; 

submitForm(formURL1, postData1); 
submitForm(formURL2, postData2); 
}; 
function submitForm(formURL, postData) { 
$('#push-message').append('sending data to url : '+formURL+'\n'); 
$.ajax(
    { 
     url: formURL, 
     type: "POST", 
     data: postData, 
     success: function (data, textStatus, jqXHR) { 
    $('#push-message').text('success'); 
     }, 
     error: function (jqXHR, textStatus, errorThrown) { 
    $('#push-message').append('oops:error occured'+errorThrown+'\n'); 
     } 
    }); 
} 
</script> 
</body> 
</html> 

ответ

0

Вы не должны использовать родной кнопку отправки (что вызывает изменение страницы), но использовать AJAX Submit метод с помощью объекта XHR.

Вы посмотрите на этот JQuery плагин может: http://jquery.malsup.com/form/

0

вам не нужно HTML тэг формы, вы можете сделать это с этой частью этого кода:

<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script> 
<form name="push" method="post" > 
<input name="pushmessage" type="hidden" value="HAIR EXTENSIONS "> 

<p align="center">Notification Message:<br /> 
<textarea style="width: 280px; height: 150px; margin-bottom: 30px;  font-family: Verdana, Geneva, sans-serif; border-color: #000; border-  width: 1px; resize: none;" name="pushmessage" id="push-message"> </textarea><br /> 

<input type='button' class="inputbtn" name='Submit' value='Push' onclick='sendFormData()' /> 


<script type="text/javascript"> 
function sendFormData() { 
    var formURL1 = 'http://apple/iPhone-message'; 
var formURL2 = 'http://google/android-message'; 
var postData1 =  {'publishersid':'appdeveloper','username':'myself','pass':'mypassword','appid':' CommunityApp-i','topics':'test'}; 
var postData2 =  {'publishersid':'appdeveloper','username':'myself','pass':'mypassword','ap pid':'CommunityApp','topics':'test'}; 

submitForm(formURL1, postData1); 
submitForm(formURL2, postData2); 
}; 
function submitForm(formURL, postData) { 
$('#push-message').append('sending data to url : '+formURL+'\n'); 
$.ajax(
    { 
     url: formURL, 
     type: "POST", 
     data: postData, 
     success: function (data, textStatus, jqXHR) { 
    $('#push-message').text('success'); 
     }, 
     error: function (jqXHR, textStatus, errorThrown) { 
    $('#push-message').append('oops:error occured'+errorThrown+'\n'); 
     } 
    }); 
} 
</script> 
+0

Большое спасибо хлопцы за очень быстрые ответы. Я посмотрю на этот метод Тарани. Что касается вашего кода Ebrahim ... который очень подробный, и я очень ценю вашу проблему, чтобы напечатать это ... потому что обеим страницам нужен идентификатор приложения, который отличается для iPhone и Android ... позволяет называть их iphoneapp и androidapp. ..how или где я могу включить их в свой код, чтобы избежать ошибки? – meself

+0

hey meself, (извините за мой плохой английский :)), у меня есть дополнительный код, который не существует в ваших формах, которые вы можете добавить в postdata следующим образом. 'postdata1.code = '123'' и для вашего второго использования' postdata2.code =' 456'', а затем отправить postdata1 и postdata2 для отправки формы –

+0

Спасибо Ebrahim ... ваш английский хороший ,,, который не работал для мне .... когда я обертываю ваш код в <тип сценария ...> и т. д. ... он выдает синтаксическую ошибку..на этой строке функция SubmitForm (formUrl, postData) { $ .ajax (... when Я нажимаю кнопку «Отправить, ничего не делает» – meself