从下拉菜单中选择Document.write

时间:2012-04-08 21:42:27

标签: javascript drop-down-menu document.write

我是JavaScript新手。这个请求似乎很简单,但似乎无法让它发挥作用。

我想从下拉菜单中选择并返回HTML中的值。正如我现在所做的那样,它会在文本框中返回值,但我希望它不使用文本框来编写它,只需将其返回<p></p>

http://jsfiddle.net/Ppk5k/

6 个答案:

答案 0 :(得分:1)

通过其ID(或其他方法)获取<p>,然后设置其innerHTML

答案 1 :(得分:1)

页面加载后无法使用document.write,它将替换页面内容。您需要使用innerHTML或appendChild。

答案 2 :(得分:1)

你走了:

function favBrowser()
{
var mylist=document.getElementById("myList");
document.getElementById("favorite").innerHTML = mylist.options[mylist.selectedIndex].text+".";

}

您必须使用innerHTML#favorite的HTML设置为所选的浏览器。

工作示例:http://jsfiddle.net/Ppk5k/6/

更新

获取值和文字:

function favBrowser() {
    var mylist = document.getElementById("myList");
    document.getElementById("favorite").innerHTML = mylist.options[mylist.selectedIndex].text;
    document.getElementById("favorite").innerHTML += " and the value of that option is " + mylist.options[mylist.selectedIndex].value + ".";
}

如果您选择了Google Chrome,则会输出:

  

您最喜欢的浏览器是Google Chrome以及该选项的价值   是G。

例如:http://jsfiddle.net/Ppk5k/13/

答案 3 :(得分:1)

不要忘记在选项标记中包含value=""属性,例如:

<script type="text/javascript">
    function favBrowser() {
        var mylist=document.getElementById('myList');
        document.getElementById('favorite').value=mylist.value;
    }
</script>
<form>
    Select your favorite browser:
    <select id="myList" onchange="favBrowser()">
        <option></option>
        <option value="Google Chrome">Google Chrome</option>
        <option value="Firefox">Firefox</option>  
        <option value="Internet Explorer">Internet Explorer</option>
        <option value="Safari">Safari</option>
        <option value="Opera">Opera</option>
    </select>
    <p>Your favorite browser is: <input type="text" id="favorite" size="20" value=""></p>
</form>

答案 4 :(得分:1)

执行此操作的最简单方法是为HTML元素提供id属性并更改其innerHTML或清除,创建文本节点并将其附加到元素:

<强>的innerHTML:

var element = document.getElementById('someElement');
element.innerHTML = "someValue";

<强>的appendChild:

var element = document.getElementById('someElement');
var oldChild = element.firstChild;
element.removeChild(oldChild);

var newChild = document.createTextNode("someValue");
element.appendChild(newChild);

答案 5 :(得分:1)

使用innerHTML。 Demo

HTML:

<form>
Select your favorite browser:
<select id="myList" onchange="favBrowser()">
  <option></option>
  <option>Google Chrome</option>
  <option>Firefox</option>  
  <option>Internet Explorer</option>
  <option>Safari</option>
  <option>Opera</option>
</select>
<p id="favorite">Your favorite browser is:
</p>

</form>

Javascript:

function favBrowser() {
    var mylist = document.getElementById("myList");
    document.getElementById("favorite").innerHTML= "Your favorite browser is: " +  mylist.options[mylist.selectedIndex].text;
}