jQuery val()成ASP格式,无法在“提交”上识别

时间:2018-12-07 14:21:05

标签: jquery asp.net ajax

我真的很需要ASP和AJAX的帮助,但是我接触的内容并不多,但是很不幸,我正在使用的CMS是用ASP编写的,所以我束手无策。 >

问题: 我有一个按钮,该按钮运行JQuery函数以更改asp表单内输入字段的值。当我单击按钮时,该字段的值将更改并显示在文本框中。但是,当我提交表单时,该值无法识别,即清除了该值。 如果我使用与按钮输入相同的值来手动更新输入字段,则在提交表单时将识别该值。这样就可以了,但是它是手动的,这是我要避免的。 如果我单击按钮,然后进入输入字段并在当前值之后添加一个空格,则该字段的整个值也会被识别并提交。

我尝试过的方法: 我已经使用JQuery触发了更改,焦点,按键,按键按下,按键按下,模糊等事件,但是对于解决问题并不高兴。我还尝试过使用Daniel Wachsstock的“ {Sendkeys””插件http://bililite.com/blog/2008/08/20/the-fnsendkeys-plugin/模拟打字的手动过程,该决议也没有解决方法。

我的问题: -我可能会忽略在ASP或AJAX中发生的常见事件或触发器吗? -有人可以指出正确的方向来研究答案吗? -是否有某种隐藏的字段会在我键入时更新,但不会在我使用$('#inputid')。val('newvalue');

时更新

其他: 更令人困惑的是,我不能在自己工作的公司之外共享代码。我知道,这使问题变得模棱两可,就像在黑暗中尝试一拳。这就是为什么现在我所有其他的错误修复途径都已用尽之后,我才发布问题。

感谢您可以提出的任何建议。

1 个答案:

答案 0 :(得分:0)

与其将单击处理程序绑定到按钮,不如捕获表单的Submit事件更好。仅当表单使用实际的“提交”按钮时,这才成立:

<button type="submit">submit</button>
<input type="submit" value="submit" />

您仍然可以将锚标记绑定为一个提交事件,但是如果锚从JavaScript逻辑触发了一个提交事件,那么也很清楚。如果没有,那仍然可行,那么您根本不需要表格。带有表单字段和字段集等的表单标签提供了基本的实用性,例如在字段之间进行制表或按Enter提交。


因此,请尝试将功能更改为此:

$('form#your-special-id').on('submit', function(){
    var hiddenField = $(this).find('input[type="hidden"]');

    hiddenField.val('please change');
});

您很可能会遇到类似这样的事情:

$('button#your-special-id').click(function(){
    var form = $('form#your-special-id'),
        hiddenField = form.find('input[type="hidden"]');

    hiddenField.val('please change');

    form.submit();
});