Ich habe Post Ajax Anfrage in Vanille Javascript, funktioniert alles gut, aber ich muss eine Variable form_data
hinzufügen, die an php gesendet werden. Zum Beispiel ist die Variable apple = 1
bereits in form_data. Ich muss orange = 2
hinzufügen, aber ich kann es nicht in meiner HTML-Form tun. Mein js Code ist unten:Hinzufügen von Variablen zu Ajax Post in Vanille Javascript
function button_publish_ajax(variable){
var form = document.getElementById("form-buttons");
var form_data = new FormData(form);
for ([key,value] of form_data.entries()){
console.log(key + ': '+value);
}
var action = form.getAttribute("action");
var xhr = new XMLHttpRequest();
xhr.open('POST', action, true);
xhr.overrideMimeType('text/xml; charset=UTF-8');
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.onreadystatechange = function(){
if (xhr.readyState == 4 && xhr.status == 200){
var result = xhr.responseText;
console.log("Result:" + result);
}
};
xhr.send(form_data);
}
Fazit: Ich möchte orange=1
hinzuzufügen form_data. Weiß jemand wie? Meine primäre Absicht war es, Informationen hinzuzufügen, auf welche Schaltfläche geklickt wurde, um AJAX-Funktionen in PHP zu unterscheiden. Mein HTML-Code ist unter:
<form method="post" action="cms_offers_button.php" id="form-buttons">
<input type="hidden" name="offer_list" value="12">
<input name="PublishListItem" type="button" class="btn btn-info offer-publish" value="Publish" id="publish-12" style="display: none;"/>
<input name="WithdrawListItem" type="button" class="btn btn-info offer-withdraw" value="Withdraw" id="withdraw-12"/>
<input name="EditListItem" type="button" class="btn btn-default offer-edit" value="Edit" id="edit-12" />
<input name="DeleteListItem" type="button" class="btn btn-danger offer-delete" value="Delete" id="delete-12"/>
Anfügen von Formulardaten, bessere Praxis als die Verwendung versteckter Eingabefelder? sie scheinen beide genau dasselbe zu tun. Versteckte Eingabefelder: https://stackoverflow.com/questions/7324950/whats-the-point-of-having-hidden-input-in-html-what-are-common-uses-for-this –
Das hängt von der ab Fall .. Wenn der Wert statisch hinzugefügt oder von Serverseite –
übergeben wird, funktioniert das, danke! – gileneusz