I had a problem with the "\ n" line creation, even when it was attributed not to copy. The fix is probably something simple that I somehow don’t see. I would appreciate any input or coaching on this issue.
(Please only give me Javascript answers, as I am not interested in jquery or other methods)
<script type="text/javascript"> if (pullDownResponseE == "") { } else { var pullDownValuesE = document.getElementById("taskOne"); var pullDownResponseE = pullDownValuesE.options[pullDownValuesE.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponseE; } if (pullDownResponseF == "") { } else{ var pullDownValuesF = document.getElementById("taskTwo"); var pullDownResponseF = pullDownValuesF.options[pullDownValuesF.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponseF; } </script>
As you can see, pullDownResponseF and pullDownReponseE should not do anything if my dropdown is "", and this part works for the most part, it does not execute any else EXCEPT code for the new line "\ n".
Can someone explain what is going wrong here?
EDIT: there could be more code here. I will only include the main parts, since it takes so long.
<script type="text/javascript"> function copyNotesTemplate() { var stuffToCopy = document.getElementById('myForm').value; if(stuffToCopy.length > 1) { var stuffToCopy = "PT meets criteria" + "\n" + document.getElementById('myForm').value; } if(document.getElementById('noPtCriteria').checked) { var stuffToCopy = document.getElementById('noPtCriteria').value; } if (pullDownResponsee == "") { } else { var pullDownValuese = document.getElementById("taskOne"); var pullDownResponsee = pullDownValuese.options[pullDownValuese.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponsee; } if (pullDownResponsef == "") { } else{ var pullDownValuesf = document.getElementById("taskTwo"); var pullDownResponsef = pullDownValuesf.options[pullDownValuesf.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponsef; } if (pullDownResponseg == "") { } else{ var pullDownValuesg = document.getElementById("taskThree"); var pullDownResponseg = pullDownValuesg.options[pullDownValuesg.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponseg; } var tempValues = document.getElementById('whatUpdate').value if(tempValues.length > 1) { var stuffToCopy = stuffToCopy + "Updated" + " " + document.getElementById('whatUpdate').value + " "; } else{ } var tempValuess = document.getElementById('whatInfo').value if(tempValuess.length > 1) { var stuffToCopy = stuffToCopy + "per" + " " + document.getElementById('whatInfo').value + "\n"; } else{ } var tempValue = document.getElementById('whatDSCRP').value if(tempValue.length > 1) { var stuffToCopy = stuffToCopy + document.getElementById('whatDSCRP').value + " " + "dscrp on Collection tube and trf was resolved using" + " "; } else{ } var tempValue = document.getElementById('resolveIT').value if(tempValue.length > 1) { var stuffToCopy = stuffToCopy + document.getElementById('resolveIT').value + " "; } else{ } var tempValue = document.getElementById('tubeCorrect').value if(tempValue.length > 1) { var stuffToCopy = stuffToCopy + "trf was" + " " + document.getElementById('tubeCorrect').value; } else{ } if(stuffToCopy.length > 1) { var stuffToCopy = stuffToCopy + "\n" + document.getElementById('moreNotes').value; } else{ } if (pullDownResponsesu == "") { } else{ var pullDownValuesu = document.getElementById("mod33Apply"); var pullDownResponsesu = pullDownValuesu.options[pullDownValuesu.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponsesu; } if (pullDownResponsesb == "") { } else{ var pullDownValuesb = document.getElementById("resultICR"); var pullDownResponsesb = pullDownValuesb.options[pullDownValuesb.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponsesb + "," + " "; } if (pullDownResponsesc == "") { } else{ var pullDownValuesc = document.getElementById("moneyNCIS"); var pullDownResponsesc = pullDownValuesc.options[pullDownValuesc.selectedIndex].value; stuffToCopy = stuffToCopy + pullDownResponsesc + " "; } if (pullDownResponsesd == "") { } else{ var pullDownValuesd = document.getElementById("resultMMT"); var pullDownResponsesd = pullDownValuesd.options[pullDownValuesd.selectedIndex].value; stuffToCopy = stuffToCopy + pullDownResponsesd; } if(stuffToCopy.length > 1) { var stuffToCopy = stuffToCopy + " " + "Reason:" + " " + document.getElementById('whyNotEligible').value; } else{ } if (pullDownResponsesa == "") { } else{ var pullDownValuesa = document.getElementById("testReleased"); var pullDownResponsesa = pullDownValuesa.options[pullDownValuesa.selectedIndex].value; stuffToCopy = stuffToCopy + "\n" + pullDownResponsesa; } window.clipboardData.setData('text', stuffToCopy); } </script>
If someone skips filling the notes field or skips the drop-down list in this example, then he will not execute the code as I expected, but he creates a new line when copying as follows:
taskOne selected
(additional line here, since the task is not selected)
taskThree selected
I would like for there to be no extra line between Task one and three if task 2 is omitted. Like this:
taskOne selected
taskThree selected
Note. I know that having else {} is pointless, but it helps me visually.
I created the bindings exactly the way it looks when you copy / paste from my tool, which you can view here if you want:
Example 1: http://imgur.com/wGO5vnT
Example 2: http://imgur.com/UX1tG5S
Here is an example of my html:
<html lang="en"> What tasks are needed for the case? <br /> <select class="style3" id="taskOne"> <option value=""></option> <option value="ABN needed">ABN needed</option> <option value="Auth needed">Auth needed</option> </select> </html>