user1824996
user1824996

Reputation: 259

jQuery Type Error this is not a function

I am not sure why I kept getting this "Type Error: $refinesearch.replacewith(resultsrefinesearchwrap_content); is not a function".

My code looks like this:

var resultsheader = $('#IDX-resultsHeader'),
    resultslinknew = resultsheader.find('#IDX-resultsLinkNew'),
    resultslinkmodify = resultsheader.find('#IDX-resultsLinkModify');

var resultsrefinesearchwrap = resultsheader.find('#IDX-resultsRefineSearchWrap');

var resultsrefinesearchwrap_content = '<div class="nmr_refinesearch">';
    resultsrefinesearchwrap_content += resultsrefinesearchwrap.detach().html();
    resultsrefinesearchwrap_content += '<div class="nmr-btn gray">';
    resultsrefinesearchwrap_content += resultslinknew.detach().html();
    resultsrefinesearchwrap_content += '</div>';
    resultsrefinesearchwrap_content += '<div class="nmr-btn gray">';
    resultsrefinesearchwrap_content += resultslinkmodify.detach().html();
    resultsrefinesearchwrap_content += '</div>';
    resultsrefinesearchwrap_content += '</div>';

var $refinesearch = $('.refinesearch');

$refinesearch.replacewith(resultsrefinesearchwrap_content);

It's just a simple detach and reinsert into some new HTML container.

What did I do wrong?

Upvotes: 0

Views: 191

Answers (3)

SomeShinyObject
SomeShinyObject

Reputation: 7801

replaceWith() and JavaScript are case sensitive. Capitalize your w and you will be set.

jQuery docs

Upvotes: 1

Mohammad Masoudian
Mohammad Masoudian

Reputation: 3491

replaceWith() is case sensitive use it with Capital 'W'

$refinesearch.replaceWith(resultsrefinesearchwrap_content);

Upvotes: 2

Matt MacLean
Matt MacLean

Reputation: 19648

replacewith should be replaceWith.

$refinesearch.replaceWith(resultsrefinesearchwrap_content);

Upvotes: 4

Related Questions