Javascript没有传递整个变量字符串

时间:2016-02-29 16:43:04

标签: javascript php

我在网上发现了这个简洁的代码,完全符合我的需要。我遇到的问题是变量没有传递整个值。

<script type='text/javascript'>
    $(window).load(function() {
        $("#add_id").click(function() {
            var value = $("#entered_id").val();
            $("#list_id").append("<option value =" + value + " selected>" + value + "</option>");
        });
    });    
</script>




<select id='entered_id'>
    <option value='This is a test message'>test</option>";
</select>


<button id="add_id">Add</button>


<h2>Entered IDs</h2>
<form name="test" method="POST" action="test2.php">
    <select id="list_id" name="list_id" multiple="multiple"> </select>
    <input type="submit" />
</form>

test2.php上,变量$list_id作为&#34;来自&#34;而不是&#34;这是一个测试&#34;。

有人能引导我朝着正确的方向前进吗?

1 个答案:

答案 0 :(得分:4)

你应该把字符串值放在引号'

$("#list_id").append("<option value =" + value + " selected>" + value + "</option>");

应该是:

$("#list_id").append("<option value ='" + value + "' selected>" + value + "</option>");
_____________________________________^_____________^

换句话说,生成的选项html看起来像<option value=This is a test>,使isatest无效/未知属性。

希望这有帮助。