পৃথক DIVs মধ্যে সংখ্যার যোগ করুন

(বাধ্যতামূলক আমি এই নতুন করছি) আমি কি করার চেষ্টা করছি ...

  1. DIV ID এর সামগ্রী (একটি নম্বর) আনুন।
  2. ঐ সংখ্যাগুলিকে একসঙ্গে যুক্ত করুন
  3. তাদের "এ" ডিভিতে মুদ্রণ করুন।

আমি এটা সুন্দর darn সহজ হওয়া উচিত জানি। কিন্তু আমার মাথাটা মোড়ানো না কেন এটা কাজ করছে না। আমি শিখতে চাই কেন এটা কাজ করছে না। আমি অগত্যা আপনি আমার জন্য এটা লিখতে চান না। আমি শিখতে চাই. এখানে আমার কোড ...

var at = document.getElementById("a-total");
var ac = document.getElementById("a-coffee").innerHTML;
var ah = document.getElementById("a-hobby").innerHTML;
var af = document.getElementById("a-fundme").innerHTML;

var addopt = ac + ah + af;

function aTotal (){
    if (addopt >= 0){
        at.innerHTML = addopt;
    } else {
        console.log("tis broken");
    }
}

aTotal();

এটি সঠিকভাবে আউটপুট হয়, তবে এটি ডিভিভির সংখ্যাগুলিকে একত্রিত করে না। এটি তাদের একসঙ্গে যোগ করার পরিবর্তে পাশ দিয়ে তাদের স্থাপন করা হয়।

1
Divs থেকে প্রাপ্ত মান টাইপ স্ট্রিং হয়। আপনি তাদের সংখ্যা রূপান্তর করতে হবে।
যোগ লেখক ultimatecoder, উৎস
অভ্যন্তরীণ HTML স্ট্রিং হিসাবে ফেরত। ভাসা/পূর্ণসংখ্যা রূপান্তর এবং এটি কাজ করা উচিত। পার্সফ্লোট বা পার্সেন্ট ব্যবহার করে এটি করা যেতে পারে। গুডলাক!
যোগ লেখক Peter Bode, উৎস
আপনার ac এবং তাই স্ট্রিং হতে যাচ্ছে, আপনাকে সেগুলি যোগ করার আগে সংখ্যার মধ্যে রূপান্তর করতে হবে
যোগ লেখক Robin Zigmond, উৎস

6 উত্তর

এটি কারণ আপনি শুধুমাত্র একটি <�কোড> স্ট্রিং সংযোজন করছেন।

আপনাকে সংখ্যাহিসাবে মানগুলি রূপান্তর করতে হবে .innerHTML() একটি স্ট্রিং প্রদান করে।

আপনার অপারেশনটি কীভাবে করা উচিত:

var addopt = +ac + +ah + +af;

দ্রষ্টব্য:

.innetrText() <�ব্যবহার করার জন্য এটি ভাল।/a> অথবা .textContent() ফলাফলের মধ্যে যদি থাকে তবে আপনার উপাদানের ভিতরে HTML মার্কআপগুলি পেতে .innerHTML এ ক্লিক করুন।

1
যোগ
@ উইলিয়ামগরিসন ইউনিভার্সিটি `+ অপারেটরটি একটি স্ট্রিংকে জাভাস্ক্রিপ্টে একটি সংখ্যায় রূপান্তর করার শর্টকাট, দয়া করে জাভাস্ক্রিপ্টে ব্যবহৃত ইউনিভার্সিটি কি? আরও বিস্তারিত জানার জন্য।
যোগ লেখক chŝdk, উৎস
এই পুরোপুরি কাজ। এটা পার্সিং একটি অংশ? + যে সংযুক্ত + এসি প্রতিনিধিত্ব বা কিছু রূপান্তর এটি? দুঃখিত, আমি শুধু জানতে চাই। এটা পুরোপুরি কাজ করে। শুধু জানতে চান কেন। তোমাকে অনেক ধন্যবাদ.
যোগ লেখক William Garrison, উৎস

div গুলি এর একটি সংখ্যাতে আপনি অভ্যন্তরীণ HTML একটি স্ট্রিং প্রদান করার জন্য আপনাকে সামগ্রীটির বিশ্লেষণ করতে হবে।

সুতরাং either var addopt = + ac ++ ah ++ af বা var addopt = parseInt (ac) + parseInt (ah) + parseInt (af); এর জন্য কাজ করা উচিত আপনি.

0
যোগ

আপনাকে অভ্যন্তরীণ এইচটিএমএল থেকে পূর্ণসংখ্যা বা ভাস্কর্যগুলি গাণিতিক অপারেশন করতে সক্ষম হতে হবে। নীচের কোডটি পরীক্ষা করে দেখুন যা পাঠ্যটিকে ইঙ্গিত করে এবং এটিগুলিকে ইটগুলিতে বিশ্লেষণ করে:

var addopt = parseInt (ac) + parseInt (ah) + parseInt (af);

0
যোগ

This happens a lot. What you need to do is convert to integer because it reads it as a string using ParseInt (variable) or ParsefLoat (variable) ParsefLoat (variable) can also use .toFixed (decimal_places)

0
যোগ

The contents of your divs are strings, even though the represent numbers. So if your divs have the values '1', '2' and '3' adding them togther gives you '123' rather than 6 as you might expect. Have a look at the parseInt function to see how you can turn your strings into numbers. https://www.w3schools.com/jsref/jsref_parseint.asp

0
যোগ
এখন পড়া, বন্ধু আপনাকে ধন্যবাদ!
যোগ লেখক William Garrison, উৎস

আপনি সংখ্যা পরিবর্তে অতিরিক্ত স্ট্রিং চেষ্টা করুন।

অভ্যন্তরীণ HTML একটি এইচটিএমএল উপাদান স্ট্রিং ফিরে।

আপনি সংখ্যা আছে কন্টেন্ট parseInt বা parseFloat উচিত।

<script>
var at = document.getElementById("a-total");
var ac = document.getElementById("a-coffee").innerHTML;
var ah = document.getElementById("a-hobby").innerHTML;
var af = document.getElementById("a-fundme").innerHTML;

// Values are taken as string and mus be converted to int.
// We check also that a value is not undefined.
ac = isNaN(parseInt(ac)) ? 0 : parseInt(ac);
ah = isNaN(parseInt(ah)) ? 0 : parseInt(ah);
af = isNaN(parseInt(af)) ? 0 : parseInt(af);

var addopt = ac + ah + af;

function aTotal (){
    if (addopt >= 0){
        at.innerHTML = addopt;
    } else {
        console.log("tis broken");
    }
}

aTotal();
</script>
0
যোগ