У меня есть приложение ASP.net MVC2. В котором я использую JQuery для изменения всех строк таблицы, чтобы я мог щелкнуть в любом месте любой строки, чтобы вызвать событие щелчка по ссылке в строке, по которой щелкнули.
Таблицы создаются с использованием встроенного в MVC Ajax частичного просмотра.
Вот мой скрипт JQuery.
<script type="text/javascript">
$(document).ready(function () {
$('table tr').live('click',function (event) {
$('#asplink', this).trigger('click');
})
.live('mouseenter',function (event) {
this.bgColor = 'lightblue';
})
.live('mouseleave', function (event) {
this.bgColor = 'white';
});
});
</script>
И это первая часть кода частичного представления, который создает таблицу.
<% foreach (var item in Model.JobHeaderData)
{ %>
<tr>
<td>
<a id="asplink" href="http://localhost/sagstyring/EditJob.asp?JobDataID=<%: item.JobDataId %>&JobNumId=<%: item.JobNumID%>&JobNum=<%: item.JobNumID%>&DepId=1&User_Id=<%:ViewData["UserId"]%>" onclick="window.open(this.href,'Rediger sag <%: item.JobNumID %> ', 'status=0, toolbar=0, location=0, menubar=0, directories=0, resizeable=0, scrollbars=0, width=900, height=700'); return false;">Rediger</a>
</td>
В Firefox это работает отлично. В IE сбой JQuery, когда я нажимаю на строку.
Если я отлаживаю страницу в IE. Я понял это.
Out of stack space
В строке jquery-1.4.1.js 1822
// Trigger the event, it is assumed that "handle" is a function
var handle = jQuery.data( elem, "handle" );
if ( handle ) {
handle.apply( elem, data );
}
Я не орел в javascript, поэтому я почти застрял.
Редактировать: IE имел проблему с пробелами в моей функции window.open при событии click. Исправив это, я теперь вижу, что событие click действительно работает, но оно входит в цикл. Я просто продолжаю нажимать на ссылку, пока не получу ошибку Out of stack space.
Есть мысли по этому поводу?