Mettre à jour les prix en utilisant JS et JSON avec un simple formulaire HTML
P粉294954447
2023-08-18 12:38:26
<p>J'essaie de créer une configuration dans laquelle vous entrez un code postal, soumettez le formulaire, puis utilisez JavaScript pour vérifier si les 4 premiers caractères du code postal correspondent au code postal dans certaines données JSON, et si c'est le cas , puis modifiez le prix sur la page. Ce sera pour un site Shopify, donc toute aide sur la façon de l'implémenter serait formidable. </p>
<p>Actuellement, lorsque je soumets le formulaire, la page s'actualise mais rien ne se passe. </p>
<p>Voici ce que j'ai jusqu'à présent, encore au début : </p>
<p><br /></p>
<pre class="brush:js;toolbar:false;">fonction async checkZones() {
// const requestURL = "{{ 'zones.json' | Asset_url }}";
// const request = new Request(requestURL);
//const réponse = wait fetch(request);
// const zones = wait réponse.json();
zones const = [{
"nom": "zone 1",
"codes postaux": [
"test1",
"test2",
"test3",
"test4",
"test5",
"test6",
"test7",
"test8",
"test9",
"test10"
],
"coût": 10,8
},
{
"nom": "zone 2",
"codes postaux": [
"test12",
"test13",
"test14",
"test15",
"test16",
"test17",
"test18",
"test19",
"test18",
"test19",
"test20"
],
"coût": 16,8
}
]
console.log(zones);
updatePrix()
}
fonction updatePrix(zone) {
const postcodeFormInput = document.querySelector('#postcodeForm input[type="text]"');
const codes postaux = zone.codes postaux ;
pour (code const des codes postaux) {
if (postcodeFormInput.value.contains(code)) {
const productPrice = document.querySelector('#ProductPrice-product-template').textContent;
si (code === "test1") {
const newPrice = productPrice + zone.cost ;
document.querySelector('#ProductPrice-product-template').innerHTML = newPrice;
}
}
}
}</pré>
<pre class="brush:html;toolbar:false;"><form onsubmit="checkZones()" id="postcodeForm">
<type d'entrée="texte">
<button type="submit">Coûts de mise à jour</button>
</form><span id="ProductPrice-product-template">0,00</span></pre>
<p><br /></p>
Quelques questions ici
Certaines de ces questions :
+
将其转换为数字或0(如果未定义),并使用条件链接运算符?.
pour gérer les codes postaux manquants