2010-09-09 4 views
1

Я получаю эту ошибку с помощью этого javascript, может ли кто-нибудь помочь мне выяснить, что я делаю неправильно?javascript отсутствует) аргумент

$(this).prepend('<a class="booknow2 sidelink sidelinkNew" href="javascript:__doPostBack('SetSess','')"><img src="../../images1/button/leftEdge.png" width="4" height="35" style="float:left; margin:0; padding:0;" alt="book now" /><img src="../../images1/button/rightEdge.png" width="4" height="35" style="float:right; margin:0; padding:0;" alt="book now" /><span>Check availability &raquo;</span></a>'); 

Это дает мне ошибку

missing) after argument list 

Может кто-нибудь помочь?

Благодаря

Джейми

+2

Посмотрите на выделение кода, применяемое здесь. См. Ошибку? ;) –

ответ

9

Похоже, что вам нужно, чтобы избежать некоторых одинарные кавычки там:

... __doPostBack(\'SetSess\',\'\') ... 
+1

Спасибо, что видел действительно! –

3

Вам нужно бежать вложенные кавычки, как это:

__doPostBack(\'SetSess\',\'\') 
3

Просто для вашей информации, но есть более сильный синтаксис, чтобы добавить все это как огромный HT ML фрагмент. Вы можете построить все это с помощью jQuery с нуля:

var anchor = $('<a>', { 
    'class': 'booknow2 sidelink sidelinkNew', 
    // Try to use event handlers instead - inline event handlers are *bad* 
    href: "javascript:__doPostBack('SetSess','')" 
}).prependTo(this); 

$('<img>', { 
    'width': '4', 
    'height': '35', 
    'alt': 'book now', 
    'src': '../../images1/button/rightEdge.png' 
}).css({ 
    // Try to use CSS instead - add a class 
    // and define the CSS in a separate stylesheet 
    'float': 'left', 
    'margin': 0, 
    'padding': 0, 
}).appendTo(anchor); 

$('<span>', { 
    html: 'Check availability &raquo;' 
}).appendTo(anchor); 
+0

Это способ jQuery. +1 'attr ('href', ...)' можно заменить на 'click (function() {...})', чтобы сделать его еще более идиоматичным. – Tomalak

Смежные вопросы