Ajax 选择要发布和 searlize 的表单输入
ajax select which form inputs to post and searlize
我有一个使用 AJAX 的表单。如何选择要将表单的哪些输入发送到后面的代码(而不是整个表单)?阿贾克斯
function send()
{
$.ajax({
type: 'POST',
url: this.action,
data: {'data1': $('#data1').val(),
'data2': $('#data2').val() },
success: function (done) {
$('#box').html(done.output);
});
}
形式
@using (Html.BeginForm())
{
<input id="data1" value="0" name="data1" onclick="send();" >
<input id="data2" value="0" name="data2" onclick="send();" >
}
您可以在 data
参数中指定它们:
$.ajax({
type: 'POST',
url: this.action,
data: {
field1: $('#field1').val(),
field2: $('#field2').val()
}
});
var NewKeyword = $('#txtbox1').val();
var type = $('#txtbox2').val()
$.ajax({
type: "POST",
url: "url...",
data: "{'type':'" + type + "','keyword' : '" + NewKeyword + "' }",
那么在 C# 中,您必须能够接受 "type 和 "关键字作为 WebMethod 中的参数
你可以做这样的事情:
$form = $('form');
$.ajax({
type: 'POST',
url: this.action,
data: {
'name': $('fieldNameForName', $form).val(),
'age': $('fieldNameForAge', $form).val()
}
});
您可以编写一个接受表单选择器的函数,而不是使用序列化:
function getFormData(formSelector,toSend){
var formData = {};
for(var i in toSend){
var field = formSelector.find('input[name="'+toSend[i]+'"]');
if(field!==undefined) formData[toSend[i]] = field[0].val();
}
return formData;
}
用法:
$.ajax({
url: '/myurl'
data: getFormData($('#myForm'),['FirstName','LastName','FavoriteColor']),
type: 'POST'
});
您传入的数组应该是要发送的字段的名称属性(您也可以将其设为 id,或者其他任何东西,我只是认为您已经设置了 name 属性。
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 如何使用WCF服务和javascript表单post上传.doc文件
- Javascript生成的表单未提交
- 如何使用javascript或html下载PDF格式的填写表单
- HTML表单提交时未执行外部函数
- 如何将输入(type=text)从html表单传递到javascript函数
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- Ajax发布表单序列化,发布引号'
- 多级HTML表单
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 在验证和发送邮件后更改联系人表单的 html
- jQuery表单添加不适用于下拉列表
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- 如何从pdftron webviewer获取表单数据
- JS验证ajax返回的html中的表单数据
- Javascript更新孙窗口中的表单元素
- 解析javascript表单验证器
- 阻止表单元素提交
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- Ajax 选择要发布和 searlize 的表单输入