2009-06-22 3 views
14

के बाद पॉपअप करने के लिए jQuery डेटपिकर और टिमपिकर मेरे पास 2 अलग इनपुट फ़ील्ड में डेटपिकर और टिमपिकर है लेकिन मुझे डेटाबेस कॉल के लिए 2 फ़ील्ड इनपुट को एक साथ जोड़ना होगा। जानना चाहता था कि क्या मैं केवल दोनों इनपुट के लिए 1 इनपुट फ़ील्ड का उपयोग कर सकता हूं?jQuery इनपुटपिकर और टिमपिकर एक ही इनपुट फ़ील्ड के लिए एक और

पहले डेटपिकर को कॉल करें और उपयोगकर्ता इच्छित तिथि पर क्लिक करेगा और यह मान दर्ज करेगा, फिर टाइमपिकर पॉपअप करेगा और उपयोगकर्ता को पहली क्रिया में चुनी गई तिथि को जोड़ देगा।

मैं jQuery UI Datepicker और Timepickr प्लग-इन का उपयोग कर रहा

तो मैं इस

<input class="datepicker">2009-06-22</input> 
<input class="timepicker">12:00:00</input> 

की तरह कुछ है लेकिन इस

<input class="datetimepicker">2009-06-22 12:00:00</input> 

<script type="text/javascript"> 
// Date and Time picker same input field 
$("#datepicker").datepicker({ 
    dateFormat: 'yy-mm-dd', 
    onClose: function(dateText, inst) { 
     var tempDate = $("#datepicker").val(dateText); 
     $("#datepicker").timepickr({ 
     onClose: function(timeText, inst) { 
      var tempTime = $("#datepicker").val(dateText); 
      alert("Temp Time: '" + tempTime.val() + "'"); 
      $("#datepicker").val(tempDate.val() + ' ' + tempTime.val()); 
     } 
     });         
    } 
});    
</script> 
+0

आह, सोड। मैं वहां लिंक दर्ज करने के लिए खराब हो गया, यहां फिर से है ... [jQuery Timepicker mod] (http://puna.net.nz/timepicker.htm) – Fentex

उत्तर

0

यहाँ की तरह कुछ करना चाहते हैं के लिए एक विकल्प है:

http://www.r-ip.ru/dev/datetimepicker/index.html

$('#datetimepicker').datetimepicker({ 
    dateFormat: 'yy-mm-dd', 
    timeFormat: ' hh:ii:ss' 
}); 
+1

उस पृष्ठ पर दिनांक समय पिकर लेखक के लिए क्या पूछा गया है। .. –

+0

यह नहीं बताया गया था। साथ ही, प्रदान किए गए लिंक पर टाइम-पिकर के लिए इंटरफ़ेस भयानक है। मुझे यह समझने के लिए कुछ सेकंड लग गए कि मूल्य वृद्धि पर क्लिक करना। किसी भी तरह से, मैंने अपना डाउन-वोट हटा दिया है। – Sampson

+1

मैं मानता हूं कि मैंने जो पूछा है, उसके लिए मैंने प्लग-इन के साथ नहीं उपयोग किया है जिसका मैं उपयोग करना चाहता हूं। आपके द्वारा प्रदान किया गया समाधान अच्छा है लेकिन मैं सहमत हूं कि समय नियंत्रण थोड़ा उलझन में है। धन्यवाद हालांकि –

1

आप डेटपिकर के ऑनक्लोज़() ईवेंट में किसी ईवेंट को बाध्य कर सकते हैं। इसे अपना समय पिकर खोलें। डेटपिकर इनपुट के मूल मूल्य को लिखने दें, और एक ही इनपुट के लिए एक स्पेस के बाद टाइमपिकर इसके मूल्य को जोड़ दें।

  1. इनपुट करने के लिए बाइंड डेट-पिकर।
  2. दिनांक-पिकर की .onClose() घटना के लिए timepicker खोलने के लिए विधि संलग्न करें।
  3. इनपुट मूल्य के लिए समय-पिकर मान (पिछली जगह के साथ) संलग्न करें।

अपडेटेडः अनुशंसित एक अद्यतन प्रश्न के परिणामस्वरूप अपडेट किया गया है।

प्रलेखन कैसे datepicker के बंद होने के एक घटना/कार्रवाई बाध्य करने के लिए पर एक संक्षिप्त उदाहरण देता है:

$('.selector').datepicker({ 
    onClose: function(dateText, inst) { ... } 
}); 

इस उदाहरण में, आप निम्नलिखित अपने समारोह इस्तेमाल कर सकते हैं "onClode:" मूल्य लिखने के लिए इनपुट के लिए, और timepicker पॉपअप।

$(".selector").datepicker({ 
    onClose: function(dateText, inst) { 
    $(".selector").val(dateText); 
    // Raise Timepickr 
    } 
}); 
+0

मुझे इस विकल्प का प्रवाह पसंद है लेकिन मैंने कभी भी कुछ भी बांध नहीं लिया है। मैंने आपके द्वारा उपयोग किए जा रहे कोड को दिखाने के लिए उपरोक्त पोस्ट को संपादित किया है। बहुत बुनियादी –

+0

हम्म मैं टाइमपिकर कैसे कॉल करूं? –

+0

मुझे खेद है - मुझे नहीं पता। मैंने कभी भी उस विशेष तृतीय पक्ष प्लगइन का उपयोग नहीं किया है। आपको इसके लिए प्रलेखन से परामर्श करना होगा, या प्लगइन लेखक से संपर्क करना होगा। सभी ईमानदारी से, एक अलग तृतीय पक्ष प्लगइन की तलाश करना आसान हो सकता है जो कि दिनांक और समय दोनों में बनाया गया है - जैसे http://razum.si/jQuery-calendar/TimeCalendar.html या अलेक्जेंडर की प्रतिक्रिया में उल्लिखित प्लगइन । – Sampson

0

आप की तरह

$("#datetime").focus(function() { 
    var mydate = $("#date").val(); 
    var mytime = $("#time").val(); 
    if(mydate && mytime && !this.value) { 
     this.value = mydate + " " + mytime; 
    } 
}); 
+0

हम्म दिलचस्प, धन्यवाद –

16

एक में दोनों नियंत्रण से आदानों के संयोजन की कोशिश कर सकते मैं Any+Time(TM) है, जिसमें आप एक एकल के साथ एक एकल क्षेत्र में दिनांक/समय को जोड़ सकते हैं अनुशंसा करना चाहते हैं , उपयोग में आसान (और त्वरित!) दिनांक/समय कॉम्बो पिकर।

+0

धन्यवाद यह एक अच्छा जोड़ा है –

+0

संस्करण 4 अभी जारी किया गया है, कई नई सुविधाओं के साथ टाइम ज़ोन के लिए समर्थन सहित (इसे खोजने का प्रयास करें कोई अन्य पिकर!), jQuery चयनकर्ता/चेनिंग और आसान हटाने (स्मृति रिसाव को कम करने और अधिक गतिशील पृष्ठों का समर्थन करने के लिए)। अधिक जानने और कोड डाउनलोड करने के लिए http://www.ama3.com/anytime/ पर जाएं। अगर आपको कोई समस्या आती है या कोई सुझाव है तो कृपया उस साइट पर संपर्क लिंक का उपयोग करें। धन्यवाद! –

+2

एंड्रयू, मैंने अभी आपके सुझाव पर एनीटाइम पिकर का उपयोग करना शुरू कर दिया है। बहुत बढ़िया उपकरण! :) अगर किसी और को यह पोस्ट मिलती है, और इनलाइन संपादन के साथ jqgrid का उपयोग कर रहा है, तो AnyTime पिकर बॉक्स के ठीक बाहर काम नहीं करता है। यदि आप एक पिकर खोलते हैं और फिर पंक्ति को बंद करते हैं, और फिर उसी पिकर फ़ील्ड पर वापस जाएं, तो आपको एक त्रुटि मिलेगी जैसे "कोई और एनीटाइम पिकर नहीं बना सकता"। जिस तरह से मुझे यह ठीक करने के लिए मिला वह \t $ ('इनपुट') पास करना था। AnyTime_noPicker(); editRow() के oneditfunc करने के लिए। – jessica

0

कृपया link चेकआउट करें।

मैं कुछ लेआउट मुद्दा अद्यतन और दूसरा स्लाइडर, जो सक्रिय करता है, तो {showTime:true, time24h:true}

आप Google Code पर मूल एक पा सकते हैं हो जाएगा जोड़ लिया है।

+0

क्या आपके पास कोई डेमो प्लस है? –

1

jQuery नहीं, लेकिन यह कैलेंडर के साथ समय के साथ अच्छी तरह से काम करता है: JavaScript Date Time Picker

बस इसे पॉप अप करने के लिए क्लिक करें घटना बाँध:

$("#date").click(function() { 
    NewCssCal($(this).attr('id'), 'mmddyyyy', 'dropdown', true, 12); 
}); 

व्यक्तिगत तौर पर मैं इस बहुत आसान का पालन करने लगता है। लेकिन जाहिर है कि आपके पास नौकरी करने के लिए कई jQuery प्लगइन उपलब्ध हैं।

संबंधित मुद्दे