Can';无法从按钮操作获取表单字段(JavaScript)

Can';无法从按钮操作获取表单字段(JavaScript),javascript,asp.net-core,Javascript,Asp.net Core,我使用一个带有表单的模式窗口以及一个“保存设置”按钮来触发对我的ASP.NET核心后端的JavaScript/AJAX调用(最终)。当我使用Chrome检查元素时,我可以看到所有属性,但是我从.serializeArray()保存的变量只生成\uu RequestVerificationToken JavaScript: $(document).on("click", "#btnSaveSettings", function () { var savedSettings = $('for

我使用一个带有表单的模式窗口以及一个“保存设置”按钮来触发对我的ASP.NET核心后端的JavaScript/AJAX调用(最终)。当我使用Chrome检查元素时,我可以看到所有属性,但是我从
.serializeArray()
保存的变量只生成
\uu RequestVerificationToken

JavaScript:

$(document).on("click", "#btnSaveSettings", function () {
    var savedSettings = $('form#frmSaveSettings').serializeArray();
    console.log(savedSettings);
});
<form asp-page-handler="SaveSettings" class="form-horizontal" id="frmSaveSettings" method="post">
<fieldset> //most elementes removed for clarity!
    <legend>Edit network node</legend>
        <div class="form-group">
            <label class="col-lg-4 control-label">Domain name</label>
            <div class="col-lg-8">
                <input class="form-control" type="text" id="spanPartitionKey" readonly />
            </div>
        </div>
</fieldset> 
<div class="modal-footer">
    <div class="col-lg-12">
        <div class="row">
            <div align="left" class="col-sm-2">
                <button type="button" class="btn btn-danger">Delete node</button>
            </div>
            <div align="right" class="col-sm-10">
                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                <button type="button" class="btn btn-success" id="btnSaveSettings">Save settings</button>
            </div>
        </div>
    </div>
</div>

HTML:

$(document).on("click", "#btnSaveSettings", function () {
    var savedSettings = $('form#frmSaveSettings').serializeArray();
    console.log(savedSettings);
});
<form asp-page-handler="SaveSettings" class="form-horizontal" id="frmSaveSettings" method="post">
<fieldset> //most elementes removed for clarity!
    <legend>Edit network node</legend>
        <div class="form-group">
            <label class="col-lg-4 control-label">Domain name</label>
            <div class="col-lg-8">
                <input class="form-control" type="text" id="spanPartitionKey" readonly />
            </div>
        </div>
</fieldset> 
<div class="modal-footer">
    <div class="col-lg-12">
        <div class="row">
            <div align="left" class="col-sm-2">
                <button type="button" class="btn btn-danger">Delete node</button>
            </div>
            <div align="right" class="col-sm-10">
                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                <button type="button" class="btn btn-success" id="btnSaveSettings">Save settings</button>
            </div>
        </div>
    </div>
</div>

//为了清晰起见,大多数元素都被删除了!
编辑网络节点
域名
删除节点
接近
保存设置

基于以上内容,我希望
savedSettings
包含表单控件的值(以及防伪令牌)。我在同一个页面中有另一个模态表单,它工作得很好,但是我没有以相同的方式删除表单元素;相反,我是通过它们的
id
标记来引用它们

知道为什么会这样吗

.serializeArray()方法使用标准W3C规则 成功控制,以确定应包括哪些要素;在里面 无法禁用特定元素,必须包含名称 属性

示例代码中的
元素没有
name
属性,请设置该属性,serializeArray()将包含它

来源:

.serializeArray()方法使用标准W3C规则 成功控制,以确定应包括哪些要素;在里面 无法禁用特定元素,必须包含名称 属性

示例代码中的
元素没有
name
属性,请设置该属性,serializeArray()将包含它

来源:.

根据方法,它按
名称
序列化,而不是按
id
序列化。因此,您只需向每个输入添加适当的
名称
属性。

根据方法,它按
名称
而不是按
id
进行序列化。因此,您只需要为每个输入添加适当的
名称
属性