【问题标题】:New Form Value not being submitted未提交新的表单值
【发布时间】:2017-08-23 16:16:29
【问题描述】:

我在一个表单中有两个选择框,一个用于“品牌”,一个用于“型号”。当您从“品牌”中选择一个选项时,会填充“模型”下拉列表

$(function() {
$('#id-make-id').change(function(){
    var iSel = document.getElementById('id-make-id').value;
    $('#div-models').load('populate-models-dropdown.asp?makes='+iSel);
});
});

<select size="1" id="id-make-id" name="frm-make-id">
<option value="1">List of Makes</option
</select>

<div id="div-models">
<select size="1" id="id-model-id" name="frm-model-id">
<option value="1">List of Models</option
</select>
</div>

下拉菜单完美运行。如果表单保持不变,则表单数据提交正常。但是,当您在进行更改后提交表单时,模型下拉列表中会出现一个新列表,提交后模型下拉框(frm-model-id)的值为0。

“populate-models-dropdown.asp”中的脚本与表单相同。

【问题讨论】:

    标签: jquery asp-classic


    【解决方案1】:

    .load() 方法将整个页面内容加载到该 &lt;div&gt; 元素中,您很可能在 populate-models-dropdown.asp 中有更多内容(例如表单本身),这可能就是它中断的原因。

    要解决这个问题,请在 populate-models-dropdown.asp 中添加这样的代码:

    '...generate contents here...
    Response.Clear()
    Response.Write(rawContents)
    Response.End()
    

    这将确保只发送下拉 HTML 的原始内容,而不发送其他 HTML。

    如果这不起作用,请在模型下拉菜单上使用 Inspect Element 调试问题(例如 Chrome 中的 F12),然后查看您获得的 HTML 以及它破坏表单的原因。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-03
      • 2017-05-21
      • 1970-01-01
      • 2013-01-09
      相关资源
      最近更新 更多