jQuery replaceWith问题

时间:2013-09-02 10:40:50

标签: javascript jquery html

我有一个iframe到第三方系统,并在调用时更新数据库记录,然后显示确认消息。我想使用jQuery更改确认的文本,但似乎无法使其正常工作。这是我到目前为止的代码。对第三方系统的调用有效,但替换文本不会出现。有什么指针吗?谢谢。

<script type="text/javascript">

    $.urlParam = function(name){
      var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
      if (!results) { return ''; }
      return results[1] || '';
    }

    var lidval = $.urlParam('lid');
    var cidval = $.urlParam('cid');
    var cyidval = $.urlParam('cyid');
    //construct url
    var crmurl ='http://somerandomhost.com/Portal/index.php?task=unsusbscribe&lid='+lidval+'&cid='+cidval+'&cyid='+cyidval;

    jQuery(function($){
        $('#crm').attr('src', crmurl);
    });

</script>

<iframe frameborder="0" id="crm" scrolling="no" width="100%" src=""></iframe>

<script type="text/javascript">
    function($){
        $('crm').replaceWith('Replacement text goes here');
    };
</script>

2 个答案:

答案 0 :(得分:1)

要更改iframe的内容,您可以尝试以下代码

var ifr = $('#crm')[0].contentWindow.document,
   ifbody = $('body',ifr);
ifbody.html('Replacement text goes here');

答案 1 :(得分:1)

如果你想将字符串显示在irframe中,试试这个:

PURE JS:

var doc = document.getElementById('crm').contentDocument;
doc.body.innerHTML = 'Replacement text goes here';

<强> jQuery的:

var doc = $('#crm')[0].contentDocument;
$(doc.body).html('Replacement text goes here')