2011-04-28 74 views
0

正在使用Salesforce和我需要使用这样的东西的onfocus =“js_fn1(这一点,‘参数1’..)等在obtrusive javascript - 浏览器依赖关系中的匿名函数?

对于特殊的要求,我试图通过一个匿名函数作为参数传递给函数我我结合的onfocus这里是生成的HTML:。

<input onfocus="self=this;new AutoComplete('thePage:j_id3:thePageBlockId:j_id45:j_id46:pName','thePage:j_id3:thePageBlockId:j_id45:j_id46:primaryNameSuggestWrap', searchNamesfn, function(){fireAddressSearch(self, 'thePage:j_id3:thePageBlockId:j_id45:j_id46:address', 'thePage:j_id3:thePageBlockId:j_id45:j_id46:addressSuggestWrap', searchAddressesfn, selectAddressesfn);});return false;" onkeypress="return noenter(event)" id="thePage:j_id3:thePageBlockId:j_id45:j_id46:pName" type="text" name="thePage:j_id3:thePageBlockId:j_id45:j_id46:pName" value="" class="cField" /> 

这精美的作品在Chrome 10和Firefox 3.6,但它似乎失败,你猜对了,IE8我已经围绕这一点,但couldn几个捅别无其他结论 - IE不支持突发性js中的匿名函数?IE8表示

Message: Not implemented 

Line: 219 
Char: 1 
Code: 0 

在219行我有输入字段有人可以告诉我如何解决这个问题吗?

+0

保留它似乎很明显IE不喜欢你的超长'onfocus'属性。为什么不尝试在javascript中为它创建一个处理程序? – mattsven 2011-04-28 14:57:44

+4

'self'是JavaScript/JScript中的保留字。 IE8对你使用它有什么例外吗? – meouw 2011-04-28 14:59:18

+1

'self'是保留的吗?你确定吗? – ThiefMaster 2011-04-28 15:02:06

回答

1

感谢meouw的有用评论。

答:看来“自我”在IE