我在网上找到了这个整洁的代码,它完全符合我的需求。我遇到的问题是变量没有传递整个值。
<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
显示为"This"而不是"This is a test"。
谁能引导我走向正确的方向?
您应该将字符串值放在引号'
$("#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>
,使得is
、a
和test
属性无效/未知。
希望这有帮助。