मुझे एक समस्या हो रही है। मेरे पास एकत्रित दान की एक संचित राशि है, उदा। 10 €। फिर मेरे पास कई एनजीओ हैं जिन्हें आप दान करना चुन सकते हैं। आपके पास उन गैर सरकारी संगठनों को चालू/बंद करने का अवसर है जिनका आप समर्थन करना चाहते हैं। या तो आप उन सभी को दान करना चुन सकते हैं जिसका अर्थ है कि प्रत्येक एनजीओ को प्रत्येक को १० € / ३ = ३,३३ € प्राप्त होगा। आप दो चुन सकते हैं और आवंटन १० € / २ = ५ € प्रत्येक आदि होने जा रहा है।
मुझे जावास्क्रिप्ट में ऐसा करने का कोई तरीका खोजने में समस्याएं आ रही हैं। क्या आप मुझे सही रास्ते पर ले जा सकते हैं? धन्यवाद।
function goBack() {
window.history.back();
}
function myFunction() {
var y = 5;
var x = y / 3;
document.getElementById("demo").innerHTML = x;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="Velgørenhed.js"></script>
<link rel="stylesheet" type="text/css" href="Velgørenhed.css"/>
</head>
<body>
<!-- Tilbage knap -->
<button id="tilbage" onclick="goBack()">Tilbage</button>
<form action="/action_page.php" method="get">
<input type="checkbox" name="organisation" value="WHO" checked> Vælg velgørenhedsorgsnisation WHO<br>
<input type="checkbox" name="organisation" value="Plastic Change" checked> Vælg velgørenhedsorgsnisation Plastic Change<br>
<input type="checkbox" name="organisation" value="Sea Turtle Conservancy" checked> Vælg velgørenhedsorgsnisation Sea Turtle Conservancy<br>
<input type="submit" value="Submit">
</form>
<p>y = 5, calculate x = y / 3, and display x:</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<!-- Log ud knap -->
<button id="logOut" onclick="logOut()">Log ud</button>
<script>
function logOut() {
document.location.href = "1logInd.html";
}
</script>
</body>
</html>
3 जवाब
आप सभी चयनित चेकबॉक्स ढूंढ सकते हैं और परिणामी लंबाई का उपयोग करके सभी संगठनों में दान की जाने वाली कुल राशि से भाग दे सकते हैं।
const form = document.forms[0];
form.elements['calc-btn'].addEventListener('click', function() {
let total = parseInt(form.elements['amount'].value, 10);
let count = selectedCheckboxes(form, 'organisation').length;
document.getElementById('result').textContent = average(total, count).toFixed(2);
});
triggerEvent(form.elements['calc-btn'], 'click'); // Calculate on load
function average(total, count) {
return count > 0 ? total / count : 0;
}
function selectedCheckboxes(form, name) {
return Array.from(form.elements[name]).filter(c => c.checked);
}
function triggerEvent(el, eventName) {
var event = document.createEvent('HTMLEvents');
event.initEvent(eventName, true, false);
el.dispatchEvent(event);
}
fieldset {
margin-bottom: 0.5em;
}
.result-display {
margin-top: 1em;
}
<form action="/action_page.php" method="get">
<h2>Donation Form</h2>
<fieldset>
<legend>Organizations</legend>
<input type="checkbox" name="organisation" value="WHO" checked>
Vælg velgørenhedsorgsnisation WHO<br>
<input type="checkbox" name="organisation" value="Plastic Change" checked>
Vælg velgørenhedsorgsnisation Plastic Change<br>
<input type="checkbox" name="organisation" value="Sea Turtle Conservancy" checked>
Vælg velgørenhedsorgsnisation Sea Turtle Conservancy<br>
</fieldset>
<fieldset>
<legend>Donation amount (€)</legend>
<input type="text" name="amount" value="10.00" />
</fieldset>
<input type="button" id="calc-btn" value="Calculate" />
<div class="result-display">Calculated donation amount: <span id="result">0</span>€</div>
</form>
$(".orgs input[type='checkbox']:checked").length;
लौटाएगा कि कितने चेकबॉक्स चुने गए हैं। दान की कुल राशि को चयनित संगठनों की संख्या में विभाजित किया जाएगा।
function goBack() {
window.history.back();
}
function myFunction() {
// let's suppose that we have 20$ donated
var totalDonations = 20;
var noOfChckSelected = $(".orgs input[type='checkbox']:checked").length;
console.log("no of organisations selectd: " + noOfChckSelected)
var donationPerOrg = totalDonations / noOfChckSelected;
document.getElementById("demo").innerHTML = donationPerOrg;
console.log("each organisation will receive: " + donationPerOrg)
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="Velgørenhed.js"></script>
<link rel="stylesheet" type="text/css" href="Velgørenhed.css"/>
</head>
<body>
<!-- Tilbage knap -->
<button id="tilbage" onclick="goBack()">Tilbage</button>
<form action="/action_page.php" method="get">
<div class = "orgs">
<input type="checkbox" name="organisation" value="WHO" checked> Vælg velgørenhedsorgsnisation WHO<br>
<input type="checkbox" name="organisation" value="Plastic Change" checked> Vælg velgørenhedsorgsnisation Plastic Change<br>
<input type="checkbox" name="organisation" value="Sea Turtle Conservancy" checked> Vælg velgørenhedsorgsnisation Sea Turtle Conservancy<br>
<input type="submit" value="Submit">
</div>
</form>
<p>y = 5, calculate x = y / 3, and display x:</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<!-- Log ud knap -->
<button id="logOut" onclick="logOut()">Log ud</button>
<script>
function logOut() {
document.location.href = "1logInd.html";
}
</script>
</body>
</html>
मेरे पास इस बात का पूरा दायरा नहीं है कि आपको दान की संचित राशि कहाँ से मिल रही है, लेकिन मैं यह मान सकता हूँ कि "संगठन" नाम वाले चेकबॉक्स एनजीओ हैं। उस स्थिति में, आप कुछ ऐसा कर सकते हैं
var numOrgsDonateTo = document.querySelectorAll("input[name='organisations[]']:checked").length
var allocation = sumDonation / numOrgsDonateTo
पहली पंक्ति मूल रूप से नाम = "संगठन" के साथ सभी इनपुट की खोज कर रही है जिन्हें चेक किया गया है और गिनती है कि कितने हैं