0

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

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

我尝试编写一个 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>

我相信有一个更简单的解决方案 - 将一个表单元素链接到两个不同的表单,但我不知道该怎么做 - 非常感谢任何帮助

4

2 回答 2

0

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

var genre = select_genre.value;

相反,将该行代码更改为 -

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

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

于 2012-07-14T22:48:40.140 回答
0

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

为什么不直接使用隐藏输入并更新其值?

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

可以说,最好的办法是根据用户输入确定表单操作,这样你就只有一个表单......这里有一个简短的讨论:http ://www.javascript-coder.com/html-form/html -form-action.phtml

于 2012-07-14T22:49:51.837 回答