我有一个选择控件:
<select name="AdditionalCategory">
<option value="1">Category 1</option>
<option value="2">Category 2</option>
</select>
然后我使用jQuery发送AJAX请求,序列化表单:
$.post("../../d/up.php",$("#main").serialize(),
function(data){
但是,如果我选择类别1,则serialize()函数会序列化标签,而不是选项的值。因此请求将是up.php/?AdditionalCategory=Category 1
有没有办法告诉函数发送值,如下所示:
up.php/?AdditionalCategory=1
答案 0 :(得分:2)
它应该可以正常工作,但HTML表单中有一个小错误,即<option>
的结束标记</value>
,而不是</option>
。
检查下面的工作代码:
$(function() {
$("#but").click(function() {
console.log($("#main").serialize());
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="main">
<select name="AdditionalCategory">
<option value="1" selected>Category 1</option>
<option value="2">Category 2</option>
</select>
</form>
<button id="but">Click me</button>
&#13;