2017-08-30 63 views
0

我试图用至少两个(可能会更多)的窗体制作一个页面。我尝试为第二个脚本设置一个单独的脚本,同时还为每个字段输入正确的ID。但无论如何,它总是输出到第一个输出textarea。我认为有一些方法必须为脚本定义每个单独的表单。我对这一切都很陌生,所以不知道该怎么做。非常感谢任何人可以提供的帮助。2个输出在同一页面上的输出互相冲突

<table width="100%" height="600" border=0> 
<tr> 
<td width=550 valign=top> 

<form name="Form1" onsubmit="return false;" action=""> 
<b><font color="#2C3E60">Name:</font></b><br> 
<input type="text" name="name" id="name" placeholder="Name"><br> 
<b><font color="#2C3E60">Phone number:</font></b><br> 
<input type="text" name="phone" id="phone" placeholder="Phone number"><br> 

<b><font color="#2C3E60">Yes/No?:</font></b> <br> 
<select type="drop" name="Question1" id="question1"> 
<option value="Select Yes or No">...</option> 
<option value="Yes">Yes</option> 
<option value="No">No</option> 
</select> 
<br> 
<b><font color="#2C3E60">Yes/No 2?:</font></b><br> 
<select type="drop" name="Question2" id="question2"> 
<option value="Select Yes, No or n/a">...</option> 
<option value="Yes">Yes</option> 
<option value="No">No</option> 
<option value="n/a">n/a</option> 
</select> 
<br> 
<b><font color="#2C3E60">Notes:</font></b><br> 
<textarea type="textarea" name="Notes" id="notes" placeholder="Problem" cols="70" rows="3"></textarea> 
<br> 
<b><font color="#2C3E60">Issue:</font></b><br> 
<textarea type="textarea" name="Issue" id="issue" placeholder="Issue" cols="70" rows="6"></textarea>  
<br> 
<b><font color="#2C3E60">Action:</font></b><br> 
<textarea type="textarea" name="Action" id="action" placeholder="Action" cols="70" rows="10"></textarea> 
<br> 



</td> 
<td valign="top"> 

<table border=0 height=100% ><tr><td valign="top" height=410> 

<textarea type="textarea" name="form1output" 
onclick="this.focus();this.select()" id="output" cols="70" rows="25" 
placeholder="Name: 
Number: 
Y or N?: 
Question?:&#x0a; 
Notes:&#x0a; 
Issue:&#x0a; 
Action:"></textarea> 
<br> 

</td> 

</tr> 
    <tr><td valign=top> 

    <div class="btn-group"> 
<button value="Combine" onclick="convert()">Combine</button> <br><br> 
</div> 


    </td></tr> 
<tr> 
<td align="right"> 




<table width=25% height=100% border=0><tr><td valign="bottom"> 

<div class="btn-group"> 
<button type="reset" value="Reset form">Reset form</button> <br><br> 
</div> 

</form> 

</td></tr></table> 
</td></tr></table> 
</td></tr></table> 

<hr> 

<table width="100%" height="600" border=0> 
<tr> 
<td width=550 valign=top> 

<form name="Form2" onsubmit="return false;" action=""> 
<b><font color="#2C3E60">Name:</font></b><br> 
<input type="text" name="Name2" id="name2" placeholder="Name"><br> 
<b><font color="#2C3E60">Phone Number:</font></b><br> 
<input type="text" name="Currentnumber" id="currentnumber" 
placeholder="Corrent phone number"><br> 

<b><font color="#2C3E60">Y or N:</font></b> <br> 
<select type="drop" name="YESNO" id="yesno"> 
<option value="Select Yes or No">...</option> 
<option value="Yes">Yes</option> 
<option value="No">No</option> 
</select> 
<br> 
<b><font color="#2C3E60">Did you offer self serve?:</font></b><br> 
<select type="drop" name="Selfserve" id="SSO"> 
<option value="Select Yes, No or n/a">...</option> 
<option value="Yes">Yes</option> 
<option value="No">No</option> 
<option value="n/a">n/a</option> 
</select> 
<br> 
<b><font color="#2C3E60">Problem:</font></b><br> 
<textarea type="textarea" name="Problem" id="problem" placeholder="Problem" 
cols="70"   rows="3"></textarea> 
<br> 
<b><font color="#2C3E60">Issue:</font></b><br> 
<textarea type="textarea" name="Issue" id="issue2" placeholder="Issue" 
cols="70"     rows="6"></textarea>  
<br> 
<b><font color="#2C3E60">Action:</font></b><br> 
<textarea type="textarea" name="Action" id="action2" placeholder="Action" 
cols="70"    rows="10"></textarea> 
<br> 


</td> 
<td valign="top"> 

<table border=0 height=100% ><tr><td valign="top" height=410> 
<textarea type="textarea" name="form2output" 
onclick="this.focus();this.select()"   
id="output2" cols="70" 
rows="25" placeholder="Name: 
Number: 
Y N?: 
Question?:&#x0a; 
Notes:&#x0a; 
Issue:&#x0a; 
Action:"></textarea> 
<br> 

</td> 

</tr> 
    <tr><td valign=top> 

    <div class="btn-group"> 
<button value="Combine" onclick="convert()">Combine</button> <br><br> 
</div> 


    </td></tr> 
<tr> 
<td align="right"> 




<table width=25% height=100% border=0><tr><td valign="bottom"> 

<div class="btn-group"> 
<button type="reset" value="Reset form">Reset form</button> <br><br> 
</div> 

</form> 

</td></tr></table> 
</td></tr></table> 
</td></tr></table> 

</div> 

和脚本

<script> 
/*Reset command*/ 
$(document).ready(function(){ 
$(":reset").css("background-color", ""); 
}); 
</script> 

<script> 
function wordwrap(str, width, brk, cut) { 
brk = brk || '\n'; 
width = width || 60; 
cut = cut || false; 
if (!str) 
return str; 

var regex = '.{1,' +width+ '}(\\s|$)' + (cut ? '|.{' +width+ '}|.+$' : 
'|\\S+?(\\s|$)'); 

return str.match(RegExp(regex, 'g')).join(brk); 
} 
function convert() { 
var name = document.getElementById("name").value; 
var phone = document.getElementById("phone").value; 
var question1 = document.getElementById("question1").value; 
var question2 = document.getElementById("question2").value; 
var notes = document.getElementById("notes").value; 
var issue = document.getElementById("issue").value; 
var action = document.getElementById("action").value; 
//input = wordwrap(input, 70, true); 

var output = ""; 

output += "Name: " + name + "\n"; 
output += "Number: " + phone + "\n"; 
output += "Question 1?: " + question1 + "\n"; 
output += "Question 2?: " + question2 + "\n\n"; 
output += "Notes: " + notes + "\n\n"; 
output += "Issue: " + issue + "\n\n"; 
output += "Action: " + action + " "; 


document.getElementById("output").value = output; 
} 


function myFunction(x) { 
x.classList.toggle("change"); 
} 


</script> 

<script> 
function wordwrap(str, width, brk, cut) { 
brk = brk || '\n'; 
width = width || 60; 
cut = cut || false; 

if (!str) 
return str; 

var regex = '.{1,' +width+ '}(\\s|$)' + (cut ? '|.{' +width+ '}|.+$' : 
'|\\S+?(\\s|$)'); 

return str.match(RegExp(regex, 'g')).join(brk); 
} 

function convert() { 
var Name2 = document.getElementById(name2").value; 
var Currentnumber = document.getElementById("currentnumber").value; 
var YESNO = document.getElementById("yesno").value; 
var selfserve = document.getElementById("SSO").value; 
var problem = document.getElementById("problem").value; 
var issue2 = document.getElementById("issue2").value; 
var action2 = document.getElementById("action2").value; 
//input = wordwrap(input, 70, true); 

var output = " "; 

output += "Name2: " + name2 + "\n"; 
output += "Current number: " + currentnumber + "\n"; 
output += "Yes No?: " + yesno + "\n"; 
output += "Self Serve?: " + selfserve + "\n\n"; 
output += "Problem: " + problem + "\n\n"; 
output += "Issue: " + issue2 + "\n\n"; 
output += "Action: " + action2 + " "; 


document.getElementById("output2").value = output; 
} 


function myFunction(x) { 
x.classList.toggle("change"); 
} 


</script> 

编辑:我做了伊沃建议的修改,但似乎仍然没有奏效。

+1

标识** **必须是独特。您还使用不存在的''元素,以及用于布局的表格,这是一个不允许的。 – j08691

+0

自从我玩过这些东西以来,已经很长时间了。如果表格现在不是,那么管理页面布局的更好方法是什么? –

+0

似乎有一些HTML语法错误,不匹配'

'标记。您看起来像是定义了三个函数两次(每个表单一个),并使用相同的重复名称。 – showdev

回答

0

更改窗口2 textarea的id来output2

<textarea type="textarea" name="form2output" 
onclick="this.focus();this.select()"    
id="output2" 
cols="70" rows="25" placeholder="Name: 
Number: 
Y N?: 
Question?:&#x0a; 
Notes:&#x0a; 
Issue:&#x0a; 
Action:"></textarea> 

,改变JS的线,你设定的输出窗口2为:

document.getElementById("output2").value = output; 
+0

我试过了,但它仍然无法正常工作,也许我错过了一些东西?我将ID添加到“output2”的输出中,并对JS进行了更改,但仍未向第二个textarea输出任何结果。 –

+0

showdev提供了一个更简洁的版本,可以在https://jsfiddle.net/qsu5nvxt/上自动检测页面上的表单 – ivo