2012-02-25 49 views
1

私は以下を持っていますa href私はjqueryダイアログを開くために使用しますが、これはうまくいきます。今ボタンのonclickイベントでhrefを呼び出す方法は?

<a class='openDialog' data-dialog-id='myEditDlg' data-dialog-autosize='false' data-dialog-alt='580' data-dialog-larg='740' data-dialog-title='test dialog' href='/mycontroller/EditDlg/myid'></a> 

が、私はボタンのonclickイベントによってそれを呼び出すしたいと思います:基本的には、openDialogのクラスはjqueryのダイアログコードを添付しました。 ボタンをクリックすると、基本的にクリックした同じ動作をしたいと思っています。<a class='openDialog' hrefどうすればいいですか?**

+1

ここで、ダイアログ(JavaScriptコード)を開くハンドラを割り当てますか?おそらく、特定のボタンを含めるようにセレクターを変更する必要があります。 – pimvdb

+0

JQueryでは、要素のonclickイベントへのバインドは$( '。selector')と同じくらい簡単です。click(function(){...})。 あなたの質問が何を求めているのか分かりません... –

+0

ありがとうございました。申し訳ありませんが、質問がうまく定式化されていない...基本的に、ボタンをクリックすると、 Larry

答えて

6

質問があれば、jQuery trigger()(?)を探してください。 例:

<button id="bt">Click</button> 
<a href="example.com" id="ex">Triggerable link</a> 

<script type="text/javascript"> 
    $('#bt').click(function() { 
     $('#ex').click(); 
    }); 
</script> 
+0

ありがとうございます。基本的には、ボタンをクリックすると、 Larry

+0

私は**クリックされた** a hrefを意味します... – Larry

+1

私が理解しているのは、クリックされたときにあなたの 'a'タグがクリックされたように動作する'ボタン 'が欲しいということです。その場合、上記のコードが動作するはずです。 – check123

5

は、リンクをクリックするイベントをエミュレートします

$('#link').click();//No arguments inside the call. 

これにより、クリックをエミュレートすることができます。リンクをクリックするのと同じです。あなたは、あなたが使用することができますhref属性にリダイレクトしたい場合は、リンク のデフォルトの動作を停止するイベントハンドラを持っている場合、これはofcourseの場所を変更しません。

location.href=$('#link').attr('href'); 

をですから、これをコールする場合ボタンをクリックすると。

$('#button').click(function(){$('#link').click(); 
    location.href=$('#link').attr('href');//In case the page doesn't change although you want it to 
} 
+0

ありがとう!まず、コード123の提案に従います。私はいくつかのボタンと輪郭を持つことができたので、私はそれが便利かもしれないと思うので、間違っているか教えてください。私は初心者です。どうもありがとうございました! お知らせします。 – Larry

+1

彼らは実際には同じです。ユーザーが別のページへのリンクをたどるようにするには、location.hrefメソッドを使用します。クリックをエミュレートする場合は、いずれの方法も使用できます。私のコードの最初の行は、code123のメソッドと基本的に同じです。あなたの助けのために –

関連する問題