If a dynamic text element string parses to nothing, you will see [empty] displayed on the layout. When the layout is exported or printed, [empty] text elements are dropped. You will not see these in your output. Displaying them in the layout view lets you know that a text element is present, but the value the dynamic tag is referring to is currently null.
The entire text element string is evaluated. For example, if you have the following text:
Map Credits: <dyn type="document" property="name"/>"
and the document doesn't have credit information,you'll still see Map Credits: on the layout because the parsed text element string is not blank. It has static text in it. If you export or print the map, Map Credits: will appear on the map. On the other hand, if you have the following text:
<dyn type="document" property="name"/>"
you will see [empty] on the display because the parsed text element string is blank.
<dyn type="page" property="PageNum_E" preStr = "See Page:" emptyStr=""/>
<dyn type="page" property="PageNum_N"/>
Does it make a difference if my Grid Index and Parcels are individual shapefiles?
Do I have to be working out of a geodatabase for the dynamic text to work appropriately?