HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[Вопрос] jquery, obj.html() или obj.innerHTML
  #1  
Старый 22.04.2008, 18:41
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
С нами: 10191686

Репутация: 210
Question [Вопрос] jquery, obj.html() или obj.innerHTML

Вот заметил такое вот свойство у jquery


Пример надуманный, но хорошо демонстрирует проблему:

Вообщем много обычного HTML кода
PHP код:
$new =<<<CONTENT
        
        <div id="content" style="float:left; width:100%;">

        <h1>Members: </h1>        
          <table class="TableMain" cellpadding="0" cellspacing="0"/>
              <thead>
                <tr align="center">
                    <th width="125" id="header">id</td>                    
                    <th width="300" id="header">EMAIL</td>
                    <th width="*" id="header">&nbsp;</td>
                    <th width="55" id="header">EDIT</td>

                    <th width="55" id="header">DELETE</td>
                 </tr>
            </thead>                <tr align="center">
                    <td><a href="/inside/member/edit/39/">39</a></td>                  
                  <td><a href="/inside/member/edit/39/">ntest@test.new</a></td>
                  <td><a href="/inside/gallery/39/" style="text-decoration:underline;">Edit gallery</a></td>
                  <td><a href="/inside/member/edit/39/"><img src="/_admin/templates/images/b_edit.png" border="0" width="16" height="16"></a></td>                  
                  <td><a href="javascript: onDelete(39);"><img src="/_admin/templates/images/b_drop.png" border="0" width="16" height="16"></a></td>

                </tr>                <tr align="center">
                    <td><a href="/inside/member/edit/47/">47</a></td>                  
                  <td><a href="/inside/member/edit/47/">test@test.ua</a></td>
                  <td><a href="/inside/gallery/47/" style="text-decoration:underline;">Edit gallery</a></td>
                  <td><a href="/inside/member/edit/47/"><img src="/_admin/templates/images/b_edit.png" border="0" width="16" height="16"></a></td>                  
                  <td><a href="javascript: onDelete(47);"><img src="/_admin/templates/images/b_drop.png" border="0" width="16" height="16"></a></td>
                </tr>                <tr align="center">

                    <td><a href="/inside/member/edit/48/">48</a></td>                  
                  <td><a href="/inside/member/edit/48/">test@test.test</a></td>
                  <td><a href="/inside/gallery/48/" style="text-decoration:underline;">Edit gallery</a></td>
                  <td><a href="/inside/member/edit/48/"><img src="/_admin/templates/images/b_edit.png" border="0" width="16" height="16"></a></td>                  
                  <td><a href="javascript: onDelete(48);"><img src="/_admin/templates/images/b_drop.png" border="0" width="16" height="16"></a></td>
                </tr>                <tr align="center">
                    <td><a href="/inside/member/edit/55/">55</a></td>                  
                  <td><a href="/inside/member/edit/55/">vff@effe.efe</a></td>

                  <td><a href="/inside/gallery/55/" style="text-decoration:underline;">Edit gallery</a></td>
                  <td><a href="/inside/member/edit/55/"><img src="/_admin/templates/images/b_edit.png" border="0" width="16" height="16"></a></td>                  
                  <td><a href="javascript: onDelete(55);"><img src="/_admin/templates/images/b_drop.png" border="0" width="16" height="16"></a></td>
                </tr>            <!--<tfoot>
              <tr>
                <td colspan="5"><input type=button value="Add member" class=inpButton onclick="window.location = '/inside/member/add/';"></td>
              </tr>
            </tfoot>-->
          </table><input type=button value="Add member" class=inpButton onclick="window.location = '/inside/member/add/';">
        </div>
CONTENT;

// Убираем переносы
$new ereg_replace("\r\n"""$new);
// Экранируем двойные кавычки
$new ereg_replace("\"""\\\""$new); 
Убираем переносы и Экранируем двойные кавычки
Это для того, что бы, код был в одну строку, иначе не сработает obj.innerHTML = [только строка, без переходов на новую]



Идем дальше:
PHP код:
<body>
<div id="content"></div>
<script>
    // $("#content").html("<?=$new?>");  НЕ РАБОТАЕТ
        var obj = document.getElementById("content");
    obj.innerHTML = "<?=$new?>"; // РАБОТАЕТ!!!
</script>
</body>
Вопрос:
Какие еще теги нужно заменять, что сработал и вариант с jquery, (пробывал - "\n", "\t", "'")
Если вообще заработает

ps возможно это символ - "@"

Последний раз редактировалось Naydav; 22.04.2008 в 19:07..
 
Ответить с цитированием

  #2  
Старый 22.04.2008, 19:48
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
С нами: 9840758

Репутация: 808


По умолчанию

Нужно смотреть на код, который получается в итоге, т.е. после того, как отработает php и получится страница.
P.S. может, не работает потому, что закомментировано? %)
 
Ответить с цитированием

  #3  
Старый 22.04.2008, 20:41
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,315
С нами: 10248806

Репутация: 2371


По умолчанию

.append ?
 
Ответить с цитированием

  #4  
Старый 22.04.2008, 21:04
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
С нами: 10191686

Репутация: 210
По умолчанию

.append - Не сработает, так же как и

var content = "test
test";
obj.innerHTML = content;

так как $new (var content ) - содержит недопустимые символы, такие как перенос строки и @, нужно добавить $new = ereg_replace("@", "at", $new);

придеться на это обращать внимание...

ps для аякса использую библиотеку xajax, интересно какое мнение относительно нее у античатовцев
 
Ответить с цитированием

  #5  
Старый 22.04.2008, 21:29
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
С нами: 9840758

Репутация: 808


По умолчанию

Это:
Код:
var content = "test
test";
не работает по правилам JS, библиотека тут не при чём.
Читаем спецификацию ecma-262:
Цитата:
7.3 Line Terminators
Like white space characters, line terminator characters are used to improve source text readability and to
separate tokens (indivisible lexical units) from each other. However, unlike white space characters, line
terminators have some influence over the behaviour of the syntactic grammar. In general, line terminators
may occur between any two tokens, but there are a few places where they are forbidden by the syntactic
grammar. A line terminator cannot occur within any token, not even a string. Line terminators also affect
the process of automatic semicolon insertion (7.8.5).
The following characters are considered to be line terminators:

Код:
Code Point Value   Name                 Formal Name
\u000A             Line Feed            <LF>
\u000D             Carriage Return      <CR>
\u2028             Line separator       <LS>
\u2029             Paragraph separator  <PS>
 
Ответить с цитированием

  #6  
Старый 23.04.2008, 13:19
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
С нами: 10191686

Репутация: 210
По умолчанию

astrologer
Я о том, что jquery не пропускает еще и "@"
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хакер и закон! SladerNon Болталка 17 12.11.2009 09:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.