2016-12-19 9 views
-2

ダイナミックリンクを手助けする解決策を探しています。私は、ユーザーが、私はそうすることについては行くだろうか他のリンクとそのリンクを交換できるように、むしろ、ボタンや入力を持っている場合はダイナミックリンクの変更

<a href="~/Test/Test.pdf" target="_blank">Test Dynamic Links</a> 

だが、私はそうのような基本的なリンクを持っているとしましょうか?

例:ユーザは、上記のリンクを変更したい

:だから

<a href="~/Test2/Test2.pdf" target="_blank">Test Dynamic Links</a> 

、ユーザーが... ~/Test2/Test2.pdfを参照し、[開く]をクリックし<input type="file" />ボタンをクリックします。ファイルエクスプローラを使用して、前のリンクのhrefの値を新しいものに変更するにはどうすればよいですか?

リンクのテキストは変更されません。

何かを明確にすることができるかどうか教えてください。

何か助けていただければ幸いです。

+0

@BvilleKidここでの回答はどれもあなたの問題に対処していませんか?彼らの努力と時間を少なくとも認める必要があり、あなたの答えがあなたのために働くかどうかを知らせる必要があります。私はそれがあなたが与えることができる敬意です。 –

答えて

1

、ユーザーがボタンをクリックしますが...〜/ Test2を/ Test2.pdfを参照し、[開く]をクリックします。ファイルエクスプローラを使用して、以前のリンクのhref値を新しい値に変更するにはどうすればよいですか?

回答することができますではありません。 JavaScriptを使用してクライアントマシンのパスを読み取ることはできません。これはすべてのブラウザに続くセキュリティ制限です。

$('#yourFileInput').val()を使用してファイルパスを取得しても、ユーザー情報を保護するための偽のパスが提供されます。

ただし、filenameを入手できます。それがあなたに何か役に立つものなら。

0

あなたはので、ここではjQueryを使用して属性を変更する方法ですが、jQueryを使ってあなたの記事をタグ付け:

HTML:

<a class="testlink" href="~/Test/Test.pdf" target="_blank">Test Dynamic Links</a> 

JS:

var link = "~/Test2/Test2.pdf"; //set var to new href 
$('.testlink').attr('href', link); //set link href to var 
2

$(".upload").change(function() { 
 
    $(this).prev('a').attr('href',$(this).val()); 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<a href="~/Test/Test.pdf" target="_blank">Test Dynamic Links</a> 
 
<input type="file" class="upload">

だから、あなたは(おそらく)のセレクタを微調整する必要がありますが、これは基本的な例です...

関連する問題