1

何らかの理由で、ページに iframe があります。

<iframe src="/widget?id=2"/>

そして、jsコードに変数アドレスがあります。

var address = 'some street';

次のように、iframe src 属性に新しいパラメーターを追加する必要があります。

<iframe src="/widget?id=2&address=some%20street"/>

私は望む:

  • アドレス変数の形式が何であるかを気にしないでください。スペースだけでなく、カンマ、セミコロンなども含めることができます (何らかの方法でユーザーによって挿入されます)。
  • 常に読みにくい醜い文字列操作を行わないようにします。
  • 複数のパラメーター ( address だけでなく) をより洗練された方法で処理できるようにします。

たとえば、 Ruby on RailsでURLパラメータをマージするのは次のように簡単です。

params.merge {:address => address}

可能であれば、jQueryでこのようなものが欲しいです。

4

1 に答える 1

0

私の現在の(ラフで高速な)実装は次のとおりです。

var src = $('iframe').attr('src');
var new_src = src.replace(/([?&])address=[^$&]*/,'$1address='+encodeURI(address));;
if (src == new_src) new_src = src+'&address='+encodeURI(address);
$('iframe').attr('src',new_src);
于 2013-03-24T08:16:13.037 に答える