javascript输出换行符
我修改了我在网上找到的一个非常简单的计算表。结果(在此处按预期工作:)如下所示:javascript输出换行符,javascript,html,forms,Javascript,Html,Forms,我修改了我在网上找到的一个非常简单的计算表。结果(在此处按预期工作:)如下所示: <!--Calculator Form--> <form id="symptomChecker" oninput="updateSource()"> <select class="symptoms" id="painType" name="painType" onchange="updateSource()"> <option value
<!--Calculator Form-->
<form id="symptomChecker" oninput="updateSource()">
<select class="symptoms" id="painType" name="painType" onchange="updateSource()">
<option value="0">Select</option>
<option value="1">Foot/Ankle</option>
<option value="2">Knee</option>
<option value="3">Hip</option>
<option value="4">Back</option>
<option value="5">Shoulder</option>
<option value="6">Hand</option>
</select>
<output class="symptoms" id="painSource" name="painSource">Possible Sources: </output>
</form>
<!--End Calculator Form-->
选择
脚/踝
膝
臀部
返回
肩
手
可能的来源:
使用以下脚本:
<script>
function updateSource() {
//get form
var form = document.getElementById("symptomChecker");
//get output
var out = form.elements["painSource"];
var painArea = parseInt(form.elements["painType"].value);
//set output depending on painArea
switch(painArea)
{
//Select
case 0:
out.value = "Ouch";
break;
//Foot
case 1: out.value = "Ouch Foot";
break;
//Knee
case 2: out.value = "Ouch Knee";
break;
//Hip
case 3: out.value = "Ouch Hip";
break;
//Back
case 4: out.value = "Ouch Knee"
break;
//Shoulder
case 5: out.value = "Ouch Shoulder"
break;
//Hand
case 6: out.value = "Ouch Hand"
break;
default:
break;
}
}
</script>
函数updateSource(){
//形成
var form=document.getElementById(“症状检查器”);
//获得输出
var out=form.elements[“painSource”];
var painArea=parseInt(form.elements[“painType”].value);
//根据区域设置输出
开关(工作区)
{
//挑选
案例0:
out.value=“哎哟”;
打破
//脚
案例1:out.value=“哎哟脚”;
打破
//膝盖
案例2:out.value=“哎哟,膝盖”;
打破
//臀部
案例3:out.value=“哎哟,Hip”;
打破
//背
案例4:out.value=“哎哟,膝盖”
打破
//肩
案例5:out.value=“哎哟,肩膀”
打破
//手
案例6:out.value=“哎哟手”
打破
违约:
打破
}
}
我想做的是在out.value中添加一些html,可能还有css。例如,我需要换行符,这样我就可以得到一些简单格式的列表。我尝试过和\n,但这些只是新手的猜测 在不重做整个表单的情况下,是否有简单的方法为out.value插入html和css?
可能的来源:
<div class="symptoms" id="painSource" name="painSource">Possible Sources: </div>
<script>
function updateSource() {
var form = document.getElementById("symptomChecker");
var out = document.getElementById("output");
var painArea = parseInt(form.elements["painType"].value);
switch(painArea) {
case 0:
out.innerHTML = "Ouch";
break;
case 1:
out.innerHTML = "Ouch Foot";
break;
default:
break; } }
</script>
函数updateSource(){
var form=document.getElementById(“症状检查器”);
var out=document.getElementById(“输出”);
var painArea=parseInt(form.elements[“painType”].value);
开关(区域){
案例0:
out.innerHTML=“哎哟”;
打破
案例1:
out.innerHTML=“哎哟脚”;
打破
违约:
中断;}}
我认为,输出
实际上是一个表单输入标记,它的.value
属性只能接受文本。这相当于在任何常规元素上设置.innerText
。因此,当您在值中添加一个
标记或其他内容时,它将变成常规文本
我不知道使用
output.value
会给您带来什么可访问性优势,但您也可以使用div
或span
和.innerHTML
插入HTML标记和文本。试试这个。这对你有用
HTML:
只需使用输出以外的内容。制作一个简单的div,并使用getElementById(“output”)修改其内容。innHTML=“cool
”;我不太明白。我用你的例子修改了哪段代码?我的错。忘记将out.value更改为out.innerHTML。正在尝试。您是否已将输出更改为div并将var输出?根据您的代码将输出更改为div。我不明白你所说的“var退出”是什么意思?很抱歉我今晚行动迟缓。我的FTP在其他所有东西上都阻塞了。var out=document.getElementById(“输出”);好啊它认为我的工作几乎(该死的FTP仍然窒息)。div和脚本之间存在不匹配。谢谢你。看起来你留着而不是留着。但是你建议我把脚本代码放在哪里:$(“#painType…这有什么用?你试过了吗?或者直接投了反对票?我已经更新了这个。尝试添加链接。我在JSFIDLE上试过。但我不知道它如何解决我的问题。哎呦等只是测试代码的占位符。我想添加列表。我不理解你关于反对票的评论。
<select class="symptoms" id="painType" name="painType1" >
<option value="0">Select</option>
<option value="1">Foot/Ankle</option>
<option value="2">Knee</option>
<option value="3">Hip</option>
<option value="4">Back</option>
<option value="5">Shoulder</option>
<option value="6">Hand</option>
</select>
<output class="symptoms" id="painSource" name="painSource">Possible Sources: </output>
$("#painType").change(function () {
var str = "";
str = $( "#painType option:selected" ).text();
$("#painSource").html("Ouch " +str );
})