Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.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_Select_Copy - Fatal编程技术网

Javascript 两个表单,一个选择/下拉框-需要将选择值从一个表单复制到另一个表单

Javascript 两个表单,一个选择/下拉框-需要将选择值从一个表单复制到另一个表单,javascript,select,copy,Javascript,Select,Copy,我有一个场景,访问者可以从下拉框中选择一个值,然后从两个提交按钮中选择一个[触发两个不同的表单操作,并且都在单独的元素中] 下拉框与两个提交按钮相关,但仅在其中一个元素下 我尝试过编写一个javascript函数,将下拉值从一个表单元素拉到另一个表单元素,但它似乎不起作用。请看下面我的代码,有什么想法吗 <script type="text/javascript"> function grabselection(){ var select_genre = document.getEl

我有一个场景,访问者可以从下拉框中选择一个值,然后从两个提交按钮中选择一个[触发两个不同的表单操作,并且都在单独的元素中]

下拉框与两个提交按钮相关,但仅在其中一个元素下

我尝试过编写一个javascript函数,将下拉值从一个表单元素拉到另一个表单元素,但它似乎不起作用。请看下面我的代码,有什么想法吗

<script type="text/javascript">
function grabselection(){
var select_genre = document.getElementById("genre");
var genre = select_genre.value;
var genre_cloaked = document.getElementById("genre2");
genre_cloaked.value = genre;
}
</script>


<form class="youtubeupload" action="uploadfinalised.php" method="post"      enctype="multipart/form-data">
<input name="token" type="hidden" value="Alhl"/>
<select  id="genre2" class="genre" name="genre"><option value="">What style is your video?</option></select>
<input value="" onclick="grabselection();" type="submit" id="uploadbutton" /></div>
    </form>     

<form id="provideurl" class="provideurl" method="post" action="provideurl.php">
<select id="genre" class="genre" name="genre">
    <option value="">What style is your video?</option>             
    <option id="genreid_1" value="1">first genre</option>
    <option id="genreid_2" value="2">second genre</option>
    <option id="genreid_3" value="3">third genre</option>
    <option id="genreid_4" value="4">fourth genre</option>  
</select>

函数选择(){
var select_genre=document.getElementById(“genre”);
var genre=选择_genre.value;
var-genre_-fopped=document.getElementById(“genre2”);
体裁_隐身。价值=体裁;
}
你的视频是什么风格的?
你的视频是什么风格的?
第一类
第二类
第三类
第四类

我相信有一个更简单的解决方案-将一个表单元素链接到两个不同的表单,但我不知道如何实现-非常感谢您提供的任何帮助

您正在使用以下代码获取所选索引的值-

var genre = select_genre.value;
相反,将该行代码更改为-

var genre = select_genre.options[select_genre.selectedIndex].value;

这将把当前选择的值插入到类型变量中。代码的其余部分应该可以正常工作。让我知道这是否适合您。

您正在
genre2
选择框中设置值,但它不包含任何具有该值的选项。要完成您试图实现的目标,必须在两个选择字段中定义选项

为什么不使用一个隐藏的输入并更新它的值呢

<input type="hidden" name="genre2" />


可以说,最好的做法是根据用户输入确定表单操作,这样您就只有一个表单。。。这里有一个简短的讨论:

我认为这并不重要,因为只有在表单提交后才会调用
grabselection()
,此时select本身就有一个值。我刚刚发现了另一个问题-我似乎无法使用$u POST['genre']在操作页面上提取值该值似乎为空?!