I'm going to hazard that no there is not.
The entire point of bind is to force the bound function to always execute with a given context. A rough idea of what bind does is:
function simpleBind(fn, context) {
return function() {
return fn.apply(context, arguments);
};
}
So you can clearly see here -- a new function is actually being returned here and so altering it's context has absolutely no effect on the wrapped (bound) function because it's using values from the enclosing function call.
My best guess at why you're looking to do something like this it hack something in place instead refactoring which is (almost always) the better approach. While I realize it may not be "in a budget" you're not really given a lot of options here. It's best to rethink your approach so you don't need to do these kinds of ugly hacks.
** This is a simplistic implementation just used to demonstrate the main point
edit
Taking some inspiration from @djechlin's comments I was going to demonstrate a way to "abuse" this simpleBind implementation by using reference type (I quote abuse, because this isn't really doing anything you weren't already allowed to do). In your case, where you're binding a string (assuming you have some control over bound values) you can do something simple like:
var context = {string: "abc"},
fn = function() { console.log(this.string); },
bound = fn.bind(context);
bound(); // logs 'abc'
context.string = "xyz";
bound(); // logs 'xyz'
This would only be useful if you could alter the values being bound to a function and uses the concept that they are references and not copies which is standard JS behavior.
testF.bind('abc').bind('xyz'). The second Bind is contexing the outer binded function.