使用 Ajax 将下拉值传递给控制器
pass the dropdown value into controller with Ajax
我在 google 中搜索了很多次,但没有找到我的答案。
我有一个 Select html 标签,它有 3 个选项标签。我想用 Jquery Ajax 传递这些 select 值,但我不能。
这是我的 Html 标签
<select id="discount" onchange="discountPostback()" title="">
<option value=""></option>
<option value="0">نمایش کل </option>
<option value="1">نمایش افراد با تخفیف</option>
<option value="2">نمایش افراد بدون تخفیف</option>
</select>
javascript
function discountPostback() {
debugger;
$.ajax({
url: '@Url.Action("Index","Report")',
type: 'POST',
data: { type: $('discount').val },
success: function () {
},
error: function () {
alert("error");
}
});
return false;
}
MVC 控制器
public ActionResult Index(short? type)
我怎样才能传递值?仅此而已
您的代码只有几处错误。请参阅下面的工作示例。
$(document).ready(function() {
$('#discount').on('change', function() {
alert($('#discount').val());
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<select id="discount" onchange="discountPostback()" title="">
<option value=""></option>
<option value="0">نمایش کل</option>
<option value="1">نمایش افراد با تخفیف</option>
<option value="2">نمایش افراد بدون تخفیف</option>
</select>
您需要 select select 使用您的 select 中需要 #
的 ID,而 val()
是 jQuery
方法获取 select 的值,如下所示。
修复
$('#discount').val()
进一步阅读
$("#discount").val()
return所选选项的值
$("#discount").text()
return所选选项的文本
我觉得你想要
来自 jQuery Ajax 添加以下行
$('#discount option:selected').val();
您可以打印所选 drop-down 列表中的这些值,方法是添加
Ajax 以上的这些下面的行,即来自 JavaScript
var discount = $('#discount option:selected').val();
console.log(discount);
Try This
function discountPostback() {
debugger;
$.ajax({
url: '@Url.Action("Index","Report")',
type: 'POST',
data: '{ type: $('#discount').val() }',
success: function () {
},
error: function () {
alert("error");
}
});
return false;
}
我在 google 中搜索了很多次,但没有找到我的答案。 我有一个 Select html 标签,它有 3 个选项标签。我想用 Jquery Ajax 传递这些 select 值,但我不能。
这是我的 Html 标签
<select id="discount" onchange="discountPostback()" title="">
<option value=""></option>
<option value="0">نمایش کل </option>
<option value="1">نمایش افراد با تخفیف</option>
<option value="2">نمایش افراد بدون تخفیف</option>
</select>
javascript
function discountPostback() {
debugger;
$.ajax({
url: '@Url.Action("Index","Report")',
type: 'POST',
data: { type: $('discount').val },
success: function () {
},
error: function () {
alert("error");
}
});
return false;
}
MVC 控制器
public ActionResult Index(short? type)
我怎样才能传递值?仅此而已
您的代码只有几处错误。请参阅下面的工作示例。
$(document).ready(function() {
$('#discount').on('change', function() {
alert($('#discount').val());
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<select id="discount" onchange="discountPostback()" title="">
<option value=""></option>
<option value="0">نمایش کل</option>
<option value="1">نمایش افراد با تخفیف</option>
<option value="2">نمایش افراد بدون تخفیف</option>
</select>
您需要 select select 使用您的 select 中需要 #
的 ID,而 val()
是 jQuery
方法获取 select 的值,如下所示。
修复
$('#discount').val()
进一步阅读
$("#discount").val()
return所选选项的值
$("#discount").text()
return所选选项的文本
我觉得你想要
来自 jQuery Ajax 添加以下行
$('#discount option:selected').val();
您可以打印所选 drop-down 列表中的这些值,方法是添加 Ajax 以上的这些下面的行,即来自 JavaScript
var discount = $('#discount option:selected').val();
console.log(discount);
Try This
function discountPostback() {
debugger;
$.ajax({
url: '@Url.Action("Index","Report")',
type: 'POST',
data: '{ type: $('#discount').val() }',
success: function () {
},
error: function () {
alert("error");
}
});
return false;
}