使用jQuery检索表单值

时间:2011-09-27 18:30:07

标签: dynamics-crm-4

可悲的是,这并不像我希望的那样干脆。在过去的几周里,我一直在研究jQuery与CRM的使用。虽然风格改变很好看,但是我找不到任何更接近商业逻辑的例子。

例如,今天我需要在4个字段中的一个为空时提醒浏览器。两个是日期字段,一个是选项列表,一个是复选框(位)。我认为调用$(“#formElement”)。val()会获得该值,并且在某些情况下它会这样做,例如在我将其解析为int之后的选项列表。但是,日期字段始终返回空字符串。

通过CRM表单HTML,我看到“#formElement”并不总是CRM表单元素的输入ID。例如,日期字段具有ID =“DateTime”(或类似的东西)。此时,我原本以为我需要创建一个过滤器,它将包含#formElement的表作为它的ID,并查找该表中第一个输入的值,但此时使用crmForm.all.formElement .DataValue似乎更容易。

我确信这里的某个人有一个解决方案(也许可以解释一下如何编写CRM表单以帮助使用过滤器),并且在工作时无法为Internet Explorer安装附加组件真的很糟糕。感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

使用jQuery选择表单本身(通过其ID或仅通过$(表单)),然后迭代作为输入文本字段的children。我以前没有为表格做过这个,但它可能适合你。

答案 1 :(得分:0)

对于正在寻找答案的其他人来说,我已经把它想象成一个可管理的程度。不幸的是,我无法使用CSS选择器来缩短属性名称,但我已经能够利用jQuery来减少时间。如果您想使用jQuery的CRM 4属性,它看起来像这样:

$(crmForm.all.new_attribute).bind("click", function() { ClickFunction(); });

我真正想要的是链接,因为有很多次我需要取消一个字段,禁用它,然后强制它提交。一点点魔力和这个:

crmForm.all.new_attribute.DataValue = null;
crmForm.all.new_attribute.Disable = true;
crmForm.all.new_attribute.ForceSubmit = true;

变为:

crmForm.all.new_attribute.dataValue().disable().forceSubmit();

我希望这可以帮助你们中的一些人!