मैं कोड चलाने के लिए jQuery और PHP का उपयोग कर रहा हूँ। मुझे बस मान डेटाबेस बनाते हैं और फिर एक चर में स्टोर करते हैं। फिर मैं वेरिएबल को कॉल करता हूं लेकिन एरर वैल्यू के बजाय वेरिएबल द्वारा "#" आउटपुट किया जा रहा है

कोड इस प्रकार है

    <?php
$rooms = file_get_contents('API FUNCTION HERE');
$rooms = json_decode($rooms);

 foreach ($rooms->rooms as $room) {
    $room = (array)$room;   
    foreach($room as $key => $value){
        echo '<input type="hidden" id="room_num_'.$key.'" name="room_num_'.$key.'" value="'.$value.'">';
    }
 }
 ?>
<script>
    
    jQuery(document).ready(function($){
        t = setTimeout("checkColors()",1000);
        t = setTimeout("checkColors2()",1000);

            
    jQuery(".imp-shape").mouseleave(function(){
        t = setTimeout("checkColors()",100);
        t = setTimeout("checkColors2()",100);


    });
  });
    function checkColors(){
            jQuery( jQuery(".imp-shape-container").children('div') ).each(function() {
                room_num = jQuery(this).data('room_num');
                idd = jQuery("#room_num_"+ room_num).val();

                if(idd != undefined){
                    if(idd == 0){
                        jQuery(this).css('background-color','rgba(76, 175, 80, 1)');
                        jQuery(this).css('fill','rgba(76, 175, 80, 1)');
                        jQuery(this).addClass('greenclass');
                    }
                    if(idd == 1){
                        jQuery(this).css('background-color','rgba(183, 28, 28, 1)');
                        jQuery(this).css('fill','rgba(183, 28, 28, 1)');
                        jQuery(this).addClass('redclass');
                    }
                }

    });

और त्रुटि इस प्रकार है

jquery.js?ver=1.12.4:1 Uncaught Error: Syntax error, unrecognized expression: #room_num_#
    at Function.fa.error (jquery.js?ver=1.12.4:1)
    at fa.tokenize (jquery.js?ver=1.12.4:1)
    at fa.select (jquery.js?ver=1.12.4:1)
    at Function.fa (jquery.js?ver=1.12.4:1)
    at Function.a.find (autoptimize_db0b5f09817b9858a2c808534bb07b1c.js:2)
    at n.fn.init.find (jquery.js?ver=1.12.4:1)
    at n.fn.init.a.fn.find (autoptimize_db0b5f09817b9858a2c808534bb07b1c.js:2)
    at a.fn.init.n.fn.init (jquery.js?ver=1.12.4:1)
    at new a.fn.init (autoptimize_db0b5f09817b9858a2c808534bb07b1c.js:2)
    at n (jquery.js?ver=1.12.4:1)

मेरी अपनी गलती देखी। इसके प्लगइन में। देरी से जवाब देने के लिए माफी। प्रश्न पूछने के बाद मैंने इसे फिर से डीबग किया।

-2
goaty 22 मई 2018, 12:23

3 जवाब

सबसे बढ़िया उत्तर

त्रुटि शायद इस लाइन के कारण होती है:

idd = jQuery("#room_num_"+ room_num).val();

मुझे संदेह है कि Room_num में एक # है जो गलत आईडी बनाता है।

1
bthe0 22 मई 2018, 12:26

JQuery संघर्ष क्योंकि jQuery एकल पृष्ठ पर एक ही आईडी का उपयोग करने की अनुमति नहीं देता है, कक्षा लक्ष्य के साथ प्रत्येक लूप का उपयोग करें।

धन्यवाद

-1
Rahul kalal 22 मई 2018, 12:46

आप सामान्य सीएसएस वर्ग का उपयोग करके अपना कोड बहुत सरल बना सकते हैं और फिर सभी वस्तुओं में foreach कर सकते हैं $('.your_class') इस तरह आप शैली बदलने या मूल्य प्राप्त करने के लिए $(this) ऑब्जेक्ट का उपयोग कर सकते हैं

0
h.aittamaa 22 मई 2018, 12:34