Jump to content

nightowl

Caspio Ninja
  • Content Count

    55
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by nightowl

  1. Hi NeoInJS, Please put the following code in the Header section of your DataPage (with Source button enabled): <style> tr > td:nth-of-type(2) { text-align: left; } </style> Hope this helps.
  2. Hi dspolyglot, You can also try the following: [RECOMMENDED] Create an external HTML file in your web hosting provider. [OR] you can also create an HTML DataPage. Use this code inside the <body> element: <!-- iframe container --> <div id="cb-iframe-container"></div> <!-- REFERENCE: http://stackoverflow.com/questions/9249680/how-to-check-if-iframe-is-loaded-or-it-has-a-content --> <script type="text/javascript"> function checkIframeLoaded() { // Get a handle to the iframe element var iframe = document.getEle
  3. Hi dspolyglot, Assuming that all of your fields have non-empty labels, you can try this trick: Add a Header/Footer section to your Details DataPage. Go to the Footer section. On the header section's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <script src="https://cdnjs.cloudflare.com/ajax/libs/he/1.1.1/he.min.js"></script> <script> // EXAMPLE 1: Calculated field is on position 2, with one fie
  4. Hi DesiLogi, For Details page, it's not possible since the next/previous page is not yet available to the browser until you hit the pagination controls. On the other hand, if you're worried about incorrect page breaks on tabular/list reports, you can try wrapping the entire report in a <div> container using the Header/Footer section. And then try if the CSS page-break-after property will work for you: https://developer.mozilla.org/en-US/docs/Web/CSS/page-break-after Hope this helps. -nightowl
  5. Hi Alwayslost, Yes. We only need to change the second line of the script. Here's the fully revised script: <script> var sortingControl = document.getElementById('asorting'); sortingControl.innerHTML = '<option value="|">No Sort</option>' + sortingControl.innerHTML; </script> Hope this helps. -nightowl
  6. HI dspolyglot, I tried this a long time ago and I was able to create a workaround. You can try the following and see if this still works: Add a Header/Footer section to your Gallery/List DataPage. Go to the Footer section. On the footer section's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <script> var sortingControl = document.getElementById('asorting'); sortingControl.innerHTML += '<option valu
  7. Hi NeoInJS, Sending an HTTP POST request comes to mind, but this method requires a back-end server to fetch the posted data. Here are the alternatives: Cookies Browser locationStorage or sessionStorage For the first option, cookies must be enabled in your browser. For the second option, you can take a look at my old forum post: Hope this helps. -nightowl
  8. Hi Sheila, This can be done in multiple ways: JavaScript: You might take a look at my other forum post below, although you might need to tweak the JavaScript a bit. See the REFERENCES section below for the link. Triggers: This is a new feature in the 9.9 release. See below for the link. REFERENCES: Multiple Values Separated by Commas Input: https://forums.caspio.com/topic/6770-multiple-values-separated-by-commas-input/?do=findComment&comment=21222 Triggered Actions (aka Triggers Feature): https://howto.caspio.com/tables-and-views/triggered-actions/ Hop
  9. Hi dspolyglot, You can try this script inside an HTML block: <script> document.getElementById('EditRecordFIELD_NAME').value = '[@cbTimestamp]'; </script> Hope this helps.
  10. Hi oceaim, You can try this revised code: <script> var signatureField = [@field:Signature!]; $(document).ready( function () { var api = $('.sigPad').signaturePad({ displayOnly: true }); api.regenerate(signatureField); } ); </script> Hope this helps.
  11. Hi NeoInJS, You can try something like this: <div id="row-marker-[@field:Teacher_ID]"></div> <script> var marker = document.getElementById('row-marker-[@field:Teacher_ID]'); var column = marker.parentNode; if ('[@calcfield:1]' === 'Alice') { var row = column.parentNode; row.style.display = 'none'; } </script> Hope this helps.
  12. Hi EveryPlace, I can that, as per MayMusic's solution, you do have the correct revision for your use case. But since you said that neither method works, i.e. MayMusic's solution or mine, can you please explain a bit further why is that so? -nightowl
  13. Hi NikkiC, Thanks for the comment. I just noticed that the script is meant to save the CSV values into separate columns (horizontally) and not into separate rows (vertically), as you wish. I need to correct the original reply. Going back to your question, this might need either: a custom trigger, or repeated submission via JavaScript Let me see if I can come up with a different script.
  14. Hi Kirkman, If you also want to duplicate a specific block/section of fields inside the DataPage, you can try the following: Add a Header/Footer section to your submission/update form. Go to the Header section. On the header section's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <!-- Header code --> <!-- Latest jQuery + jQuery Migrate --> <script src="https://code.jquery.com/jquery-3.2.1.js"></
  15. Hi planet13, You can try this revised code: <script type="text/javascript"> function uppercase(field) { return function () { field.value = field.value.toUpperCase(); } } var fields = document.querySelectorAll('input[type="text"][id^="InsertRecord"]'); fields.forEach( function (field, index) { field.oninput = uppercase(field); } ); </script> Hope this helps.
  16. Hi Kirkman, You can try this template code inside an HTML file or HTML DataPage: <div class="forms-container" class="container-fluid"> <div class="row datapage-row"> <div class="col-md-12 col-sm-12 col-xs-12"> <!-- TODO: Put your DataPage [iframe] embed code here --> <script type="text/javascript" src="https://c2eru839.caspio.com/scripts/embed.js"></script> <!--<script type="text/javascript">try{f_cbload(true, "c2eru839.caspio.com", "148b400049998e67f1434f05bf7f");}catc
  17. Hi NeoInJS, If you're trying to achieve something like this: var fields = [tag1 tag2 tag3 tag4 tag5] tag1 will be saved as field #1 tag2 will be saved as field #2 tag3 will be saved as field #3 tag4 will be saved as field #4 tag5 will be saved as field #5 Then, you can use the jQuery Tag-it! library to achieve this. You can then use the following script in the footer of your submission page: <!-- Latest jQuery + jQuery Migrate --> <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> <script src="https://
  18. Hi 74Systems, Caspio doesn’t allow to use Text64k in Filter by field (not as parent or child, but as a field which is used for filtering in cascading form element). If you edit the DataPage after you change the data type of the field to Text64k, you will see that the cascading settings are updated and filter by changed to ID: That's why it's better to use the ID instead of the full-text ProductDetails (Text64k) when filtering while retaining the full text for the dropdown display.
  19. Hi guys, You can try this workaround: Create a parent dropdown from an existing field, say Status. Insert a cascading virtual text Field, say Virtual1. Then configure it so that it filter-cascades from the Status field in STEP #1. Then create a textarea field from another existing field, say Canned_Message. Create an HTML block with the Source button enabled. Then use this sample script inside the HTML block from STEP #4: <!-- Latest jQuery + jQuery Migrate --> <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> <scri
  20. Hi NeoInJS, You can try the following: Create a new virtual field. Let's assume that it's named Virtual1. Include the actual fields for Name, Age, and Gender. Make them Hidden. Create an HTML block with the Source button enabled. Then put this code in the HTML block: <script> document.getElementById('caspioform').onsubmit = function () { // TODO: Add your field names here var fields = ['Name', 'Age', 'Gender']; var input = document.getElementById('cbParamVirtual1').value; var values = input.split(','); valu
  21. Hi NeoInJS, Please try using this formula: FLOOR( ( DATEDIFF(day, CONVERT(datetime, CAST(DATEPART(year, [@field:Start_Time]) AS CHAR(4)) + '-01-01', 101), [@field:Start_Time]) + ( 7 - ( ( ( ( DATEPART(day, [@field:Start_Time]) + FLOOR(13 * ((CASE WHEN DATEPART(month, [@field:Start_Time]) < 3 THEN DATEPART(month, [@field:Start_Time]) + 12 ELSE DATEPART(month, [@field:Start_Time]) END) +
  22. Hi mikeg, The Caspio tech tip mentioned here only allows a single instance of the e-signature: As mentioned in this link, accepting multiple signatures requires creating multiple instances of the jQuery signature library. To do that, you can do this: Add a Header/Footer section to your Details DataPage. Go to the Header section. On the header section's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <!-- Head
  23. Hi abdul, You can consider using the popular request package for this task: https://github.com/request/request -nightowl
  24. Hi Ba2sai, Please try adding a Header and Footer section inside your submission DataPage. Then put this JavaScript code inside your Footer (with Source view enabled): <script type="text/javascript"> document.getElementById("caspioform").onsubmit = function () { var str = document.getElementById("InsertRecordEmail").value; var res = str.toLowerCase(); document.getElementById("InsertRecordEmail").value = res; }; </script>
×
×
  • Create New...