Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript设置文本输入值_Javascript_Html_Forms_Submit - Fatal编程技术网

使用Javascript设置文本输入值

使用Javascript设置文本输入值,javascript,html,forms,submit,Javascript,Html,Forms,Submit,我正在创建计分选票,为提交的比赛视频打分。我对所有视频使用相同的HTML表单进行评分。使用java脚本动态更新的字段只有:评委姓名和参赛者姓名。我的问题是,我用java脚本设置的值显示在表单本身上,但没有记录在csv文件中 这是我的HTML: 选择你的名字 判断1 判断2 判断3 判决4 判断5 判断6 根据此选项选择,他们将获得一组尚未完成评分的视频,并显示第一个嵌入视频的评分表。最初,它们隐藏在页面上 <form id="ballot1" action="javascript:

我正在创建计分选票,为提交的比赛视频打分。我对所有视频使用相同的HTML表单进行评分。使用java脚本动态更新的字段只有:评委姓名和参赛者姓名。我的问题是,我用java脚本设置的值显示在表单本身上,但没有记录在csv文件中

这是我的HTML: 选择你的名字 判断1 判断2 判断3 判决4 判断5 判断6 根据此选项选择,他们将获得一组尚未完成评分的视频,并显示第一个嵌入视频的评分表。最初,它们隐藏在页面上

    <form id="ballot1" action="javascript: sendBallot()" method="post" enctype="multipart/form-data"> 
    <table border="0" style="border-collapse: collapse" width="100%" id="table3">
     <tr> 
       <td><input type="hidden" name="Contestant" value="Contestant1"></td>
       <td width="78%"><input name="form_judge" id="form_judge" value=""></td>
     </tr>
     <tr>
       <td><p><span style="font-size:1em;"><strong>1. Efficacy of Practice - 50%</strong></span></p></td>
    </tr>
    <tr>
    <td><label class="ballot">&nbsp;&nbsp;&nbsp;a. Video explores relevant subject matter  </label>
    </td>
    <td>
       <select class="ballot" id="one_a_score" name="one_a_score" valign="bottom">
         <option value="0" selected>Select Score</option>
         <option value="2">Poor</option>
         <option value="4">Below average</option>
         <option value="6">Average</option>
         <option value="8">Good</option>
         <option value="10">Excellent</option>
       </select>
   </td>
   </tr>
   </table>
   <div class="buttons">
     <input type="submit" name="submit" value="Submit Form" id="submit"/> 
     <input type="reset" value="Reset" id="resetBtn"/>
   </div>
var divName='1';-当我弄清楚为什么要设置评委姓名并在表格上显示时,这将被删除,但当我输入所有分数并点击提交按钮时,整个表格将记录在csv文件中,除了动态设置的一个值form_judge。顺便说一句,我尝试使用getElementById而不是oFormElement,结果是一样的。我可以在表单上看到它,但它只在csv文件中记录了单词“judge”,而不是实际的名称。
我错过了什么?非常感谢您的帮助。

我不能完全理解您的javascript的功能,因为其中有几个错误:

function showBallotForm(divName) {
    var divName = 'Contestant1';
从未使用divName参数,因为它会立即被重新写入

document.getElementById(divName).style.display='';
不知道你想要什么,你想显示隐藏的输入吗

var selectjudgeName = document.getElementById("judgeName");
您的HTML中没有带有judgeName id的元素,因此这将不起作用,我假设您当时没有粘贴完整的代码

oFormObject = document.forms['ballot1'];
oFormElement = oFormObject.elements['form_judge'];
好的,但是您可以通过简单地使用document.getElementByidform\u来做到这一点

oFormElement.value = selectjudgeName.options[selectjudgeName.selectedIndex].value;
但这是你的错误。您不能在select上设置值。我看到该对象是一个输入,但这很奇怪,因为我甚至看不到selectJudgeName来自何处!表单上发送的数据是selectedIndex,而不是值。因此,您需要的是找到您想要的选项,并指向它,例如:

oFormElement.selectedIndex = (the index of the option you want)
如果您不知道索引,则必须在OFORMENTOBJECT上查找它,只需执行for循环搜索哪个选项具有所需的值,当您找到它时,将其设置为selectedIndex并断开

另外,提交的是您在操作中命名的javascript,您确定发送的数据正确吗

oFormElement.selectedIndex = (the index of the option you want)