如何使用JavaScript在ASP中使用下拉列表的值填充TextArea
本文关键字:下拉列表 填充 TextArea JavaScript 何使用 ASP | 更新日期: 2023-09-27 18:14:45
我正在使用c#和SQL Server 2005开发一个asp.net MVC 3应用程序。
我也使用实体框架和代码第一方法。
在视图中,我有一个下拉列表,一个按钮和一个TextArea。
当我点击按钮时如何用下拉列表的值填充面板
我尝试使用javascript,但我认为这是不工作的,因为当我点击按钮,什么都没有发生
这是代码:
<%:Html.Label("Poste Suivant :")%><%: Html.DropDownListFor(model => model.PosteSuivantSelected, Model.PostesItems, new { @id = "dd" })%>
<input type="button" value="Ajouter" id="add" onclick="addtext()"/>
<textarea ID="ta" cols="10" name="S1" rows="2" ></textarea>
<script language="javascript" type="text/javascript">
function addtext() {
var dd = document.getElementById('dd');
var ta = document.getElementById('ta');
var add = document.getElementById('add');
if (add.onkeypress) {
ta.value = dd.selectedvalue;
}
}
</script>
只要你的。net代码是呈现一个选择列表像下面的问题只是在你的javascript。您需要使用选定的索引来获得该选项。我也不确定你为什么要检查他们是否在添加上存在按键功能。
<select id="dd"><option>a</option><option>b</option></select>
<input type="button" value="Ajouter" id="add" onclick="addtext()"/>
<textarea ID="ta" cols="10" name="S1" rows="2" ></textarea>
<script language="javascript" type="text/javascript">
function addtext() {
var dd = document.getElementById('dd');
var ta = document.getElementById('ta');
var add = document.getElementById('add');
//if (add.onkeypress) {
ta.value = dd.options[dd.selectedIndex].value;
//}
}
</script>
如果你想从选择菜单中添加选项而不是替换,那么你的函数应该是这样的:
function addtext() {
var dd = document.getElementById('dd');
var ta = document.getElementById('ta');
var add = document.getElementById('add');
//if (add.onkeypress) {
ta.value = ta.value + dd.options[dd.selectedIndex].value;
//}
}
如果你只需要文本区域中的项目一次,我会将选中的值存储在一个数组中,然后用数组的连接值替换该值。
<script language="javascript" type="text/javascript">
var storedValues = [];
function addtext() {
var dd = document.getElementById('dd');
var ta = document.getElementById('ta');
var add = document.getElementById('add');
//if (add.onkeypress) {
var selectedValue = dd.options[dd.selectedIndex].value;
if(storedValues.indexOf(selectedValue) === -1){
storedValues.push(selectedValue)
ta.value = storedValues.join('')
}
//}
}
</script>
use this:
ta.innerText = dd.options[dd.selectedIndex].innerText;