为什么“”即使被告知不要创建新行
Why does " " create a new line even when told not to?
我在"'"创建一行时遇到问题,即使它被告知在复制时不要这样做。修复可能是由于某种原因我没有看到的简单程序。我将不胜感激对这个问题的任何投入或指导。
(请只给我Javascript答案,因为我对jquery或其他方法不感兴趣(
<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>
如您所见,如果我的下拉值等于 " 并且这部分在大多数情况下有效,则 pullDownResponseF 和 pullDownReponseE 应该什么都不做,除了换行符 "'" 部分之外,它不会执行任何其他代码。
谁能解释一下这里出了什么问题?
编辑:拥有更多代码可能会有所帮助。我只会包括必要的部分,因为它太长了。
<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>
如果有人跳过填写注释字段或跳过此示例中的下拉列表,那么它不会像我预期的那样执行代码,但在像这样复制时确实会创建一个新行:
任务已选择之一
(此处为额外行,因为未选择任务二(
任务三个选定
如果跳过任务二,我希望任务一和任务三之间没有额外的行。喜欢这个:
任务已选择之一
任务三个选定
注意:我知道拥有else {}毫无意义,但它在视觉上对我有帮助。
我创建了从我的工具复制/粘贴时的外观截图,如果您愿意,可以在此处查看:
示例 1:https://i.stack.imgur.com/YMI4z.jpg
示例 2:https://i.stack.imgur.com/ykAKb.jpg
这也是我的 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>
不,它不会添加新行,请参阅:
stuffToCopy = "";
controlGroup = "a'nb";
pullDownResponseE = "";
if (pullDownResponseE == "")
{
}
else {
var pullDownValuesE = "taskOne";
var pullDownResponseE = "value";
stuffToCopy = stuffToCopy + "'n" + pullDownResponseE;
}
alert("stuffToCopy:"+stuffToCopy+";(no new-line here)'ncontrolGroup:"+controlGroup);
我的猜测是,您的 html 打印得如此之远,以至于您从输入中获得的值在末尾包含一个额外的换行符。尝试将 html 更改为 1 行,不带换行符,然后再次测试。
而不是:
<option value="a
">b
</option>
尝试:
<option value="a">b</option>
好吧,所以我修复了它,应该使用全能的document.getElementById,而不是尝试对我的if语句使用pullDownReponse。
我只是像这样更改了 if 语句:
if (pullDownResponseg == "")
{
}
对此:
if (document.getElementById("taskThree").value == "")
{
}
感谢真诚的帮助。(以及其他人荒谬的不回答(
- 字符串中的
标记未正确在 HTML 中创建新行 - 使用删除文本创建新行
- Razor代码在JavaScript字符串中创建新行
- 输入键以创建新行并聚焦当前输入字段
- 主干更新输入创建新行
- 为什么“”即使被告知不要创建新行
- 如何使用引导程序在一行中存在 3 个缩略图后创建新行
- Javascript 每 n 个,创建新行
- 按回车键时,文本区域不会停止创建新行
- 在文档编写(JavaScript)中创建新行
- 在JavaScript中,换行符实际上并不是在创建新行,有没有其他选择,或者我做错了什么
- 为什么“;innerHTML”;具有<br>不会't创建新行
- 当单击在表中创建新行时,它只会短暂出现
- 如何使用Javascript在HTML中的表上创建新行
- JavaScript在HTML中创建新行,onclick将值粘贴在另一个的下面
- 如何在输出中创建新行(JavaScript Gui)
- 当在控制台中跟踪变量时,如何创建新行
- 如果没有焦点的文本框中有数据,则创建新行,并且在第二行下拉列表中不提供数据
- 如何在角函数ng-repeat中创建新行
- Jquery在创建新行时不向最后一行添加索引