C# 将onMouseOver javascript添加到文本字段

C# 将onMouseOver javascript添加到文本字段,c#,javascript,itextsharp,textfield,C#,Javascript,Itextsharp,Textfield,我想将JavaScript添加到使用iTextSharp创建的PDF文本字段中 我尝试了以下代码: TextField field = new iTextSharp.text.pdf.TextField(writer, new iTextSharp.text.Rectangle(x, y - h, x + w, y), name); field.BackgroundColor = new BaseColor(bgcolor[0], bgcolor[1], bgcolor[2]); field.B

我想将JavaScript添加到使用iTextSharp创建的PDF文本字段中

我尝试了以下代码:

TextField field = new iTextSharp.text.pdf.TextField(writer, new iTextSharp.text.Rectangle(x, y - h, x + w, y), name);
field.BackgroundColor = new BaseColor(bgcolor[0], bgcolor[1], bgcolor[2]);
field.BorderColor = new BaseColor(bordercolor[0], bordercolor[1], bordercolor[2]);
field.BorderWidth = border;
field.BorderStyle = PdfBorderDictionary.STYLE_SOLID;
field.Text = text;

// PROBLEM:
//field.AddJavaScript = PdfAction.JavaScript("this.getField(\"Total_0\").value = ( this.getField(\"Quantity_0\").value * this.getField(\"Price_0\").value ) / this.getField(\"Multiplier_0\").value;", writer);

writer.AddAnnotation(field.GetTextField());
问题是:

iTextSharp.text.pdf.TextField
不包含
AddJavaScript
的定义


那么,当鼠标光标位于文本字段上方或文本字段已编辑时,如何添加激活的JavaScript呢?我的目的是使用Javascript根据其他文本字段的值计算一个值。

您要查找的内容称为附加操作。例如:您有一个使用
PdfName.E
定义的进入操作和一个使用
PdfName.X
定义的退出操作。当鼠标进入定义字段的矩形时触发输入操作;当鼠标位于定义字段的矩形中时,将触发退出操作

在代码中,您跳过了一个步骤,这可能就是您没有找到所需函数的原因:

PdfFormField ffield = field.GetTextField();
ffield.SetAdditionalActions(PdfName.E, PdfAction("app.alert('action!')"));
writer.AddAnnotation(ffield);

当鼠标进入文本字段时,此代码段将导致出现警报。其他选项有
PdfName.D
(mouseDown)、
PdfName.U
(mouseUp)、
PdfName.K
(用户击键)、
PdfName.V
(验证,因为字段的值已更改)等。

您正在查找的操作称为附加操作。例如:您有一个使用
PdfName.E
定义的进入操作和一个使用
PdfName.X
定义的退出操作。当鼠标进入定义字段的矩形时触发输入操作;当鼠标位于定义字段的矩形中时,将触发退出操作

在代码中,您跳过了一个步骤,这可能就是您没有找到所需函数的原因:

PdfFormField ffield = field.GetTextField();
ffield.SetAdditionalActions(PdfName.E, PdfAction("app.alert('action!')"));
writer.AddAnnotation(ffield);
当鼠标进入文本字段时,此代码段将导致出现警报。其他选项有
PdfName.D
(鼠标向下),
PdfName.U
(鼠标右键),
PdfName.K
(用户击键),
PdfName.V
(验证,因为字段的值已更改)等