|
|
#1 |
|
Участник
|
Запрет вызова окна из строк
У меня есть фрейм в котротом отображается связанное представление .. Я получаю фрейм и вместе с ним грид, который в нем отображается таким образом..
Код: document.getElementById("IFRAME_suprequestline").attachEvent("onreadystatechange", OnViewReadysuprequestline);
function OnViewReadysuprequestline() {
if (document.getElementById("IFRAME_suprequestline").readyState == 'complete') { var ocrmGrid = frameDoc.all['crmGrid'].InnerGrid; ........Мая умный однако. Взял посмотрел код строк грида.. Там вот такой html код Код: <COLGROUP>
<COL class=ms-crm-List-PreviewGlyphColumn width=20>
<COL class=ms-crm-List-RowIconColumn width=22>
<COL class="ms-crm-List-DataColumn ms-crm-List-SortedColumn" width=150 name="new_name">
<COL class=ms-crm-List-DataColumn width=302 name="new_itemid">
<COL class=ms-crm-List-DataColumn width=102 name="new_cost">
<COL class=ms-crm-List-DataColumn width=102 name="new_amount">
<COL class=ms-crm-List-DataColumn width=102 name="new_sum">
<COL>
<TBODY>
<TR class=ms-crm-List-SelectedRow otype="10000" oid="{9EF8371E-87FC-DF11-A49E-00155D8E4B06}" selected="true">
<TD class=ms-crm-List-DataCell align=middle><IMG style="CURSOR: hand" alt="Выбрано, для просмотра нажмите кнопку" src="/_imgs/grid/row_selected.gif"></TD>
<TD class=ms-crm-List-DataCell align=middle><IMG alt="" src="/test/_Common/icon.aspx?objectTypeCode=10000&iconType=GridIcon&inProduction=1&cache=1"></TD>
<TD class=ms-crm-List-DataCell><NOBR>стул</NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR><SPAN class=gridLui ondblclick=clearTimer() contentEditable=false onclick=handleGridClick() otype="10002" oid="{95890F71-61E0-DF11-BD73-00155D8E4B06}" isLink="1">Стул ERA</SPAN></NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR class=num></NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR class=num>4,00</NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR class=num>0,00р.</NOBR></TD>
<TD class=ms-crm-List-DataCell> </TD></TR>
<TR class=ms-crm-List-Row oid="{1C4D8034-87FC-DF11-A49E-00155D8E4B06}">
<TD class=ms-crm-List-DataCell align=middle><IMG style="CURSOR: hand" alt="Для просмотра нажмите кнопку" src="/_imgs/grid/r.gif"></TD>
<TD class=ms-crm-List-DataCell align=middle><IMG alt="" src="/test/_Common/icon.aspx?objectTypeCode=10000&iconType=GridIcon&inProduction=1&cache=1"></TD>
<TD class=ms-crm-List-DataCell><NOBR>телефон</NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR><SPAN class=gridLui ondblclick=clearTimer() contentEditable=false onclick=handleGridClick() otype="10002" oid="{D57D5B3A-5FE0-DF11-BD73-00155D8E4B06}" isLink="1">Телефон LG GS-5140</SPAN></NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR class=num></NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR class=num>3,00</NOBR></TD>
<TD class=ms-crm-List-DataCell><NOBR class=num>0,00р.</NOBR></TD>
<TD class=ms-crm-List-DataCell> </TD></TR></TBODY>Код: var ocrmGrid = frameDoc.all['crmGrid'].InnerGrid;
function TestF() {alert('Test');}
var rows = ocrmGrid.getElementsByTagName('SPAN');
var k = 0;
while (k < rows.length) {
if (rows[k].id != null) {
rows[k].ondblclick = TestF;
rows[k].isLink = "0";
rows[k].onclick = TestF;
rows[k].attachEvent("ondblclick", TestF);
rows[k].attachEvent("onclick", TestF);
}
k = k + 1;
}Последний раз редактировалось Kipetcoff; 01.12.2010 в 14:19. |
|
|
|
|
#2 |
|
Moderator
|
Может быть попробовать это: http://mscrm4ever.blogspot.com/2009/...-solution.html
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. ![]() MS Certified Dirty Magic Professional
|
|
|
|
|
#3 |
|
Участник
|
Такая штука уже есть, она работает в определенном статусе. Дело в том что у меня стоит так называемый grideditor Он самый . И нужно чтобы Grid был открыт для кликанья.
|
|
|
|
|
#4 |
|
Участник
|
Я нашел как добавить свое событие, но как удалить первоначальное так и не выяснил. Нужно было перебирать элементы TR
Код: var rows1 = ocrmGrid.getElementsByTagName('TR');
var h = 0;
while (h < rows1.length) {
if (rows1[h].id != null) {
rows1[h].attachEvent("ondblclick", function Slower() { alert('test'); });
rows1[h].attachEvent("onclick", function Slower() { alert('test'); });
}
h = h + 1;
} |
|
|
|
|
#5 |
|
Участник
|
Попробуй вот так:
frameDoc.all['crmGrid'].SetParameter("disableDblClick", "1");
__________________
Читайте SDK!!! |
|
|
|
|
|