我真的很需要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');
时更新其他: 更令人困惑的是,我不能在自己工作的公司之外共享代码。我知道,这使问题变得模棱两可,就像在黑暗中尝试一拳。这就是为什么现在我所有其他的错误修复途径都已用尽之后,我才发布问题。
感谢您可以提出的任何建议。
答案 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();
});