yeni bir sekmede form gönderme


143

Yeni bir sekmede gönder tarafından çağrılan sayfayı yüklemek için (sadece bazı işlevleri test etmek için, bu davranışı önlemek için) istiyorum: mümkün mü?

Yanıtlar:


305
<form target="_blank" [....]

formu yeni bir sekmede gönderecek ... Aradığınız şeyin bu olup olmadığından emin değilim, lütfen daha iyi açıklayın ...


1
Ohhh evet! demek istediğim bu! Üzgünüm ingilizcem çok saçma. Konuyu düzenledim, umut şu anda daha karmaşıktır :)
markzzz

1
jqueryEtiket i bir ajax isteği bahsediyorsun sandım, bana şaşkın;)
Strae

4
@nalply: Cidden mi? Çoğu tarayıcı, bir web sitesi yeni bir pencere ( target="_blank") kullanmasını önerdiğinde sekmeler kullanır . Ve bu iyi bir şey çünkü hemen hemen hiç kimse bir web sitesinin yeni bir pencere açmasını istemiyor ve bu varsayılanın hemen hemen her web sitesinin _blankgünümüzde kullandığı için değişeceğini düşünmüyorum .
ThiefMaster

Bu, halının altında önemli bir ayrıntıyı süpürüyor. _blankyeni bir sekme açmaz. Yeni bir sekme açmak için çoğunlukla (ama her zaman değil !!) varsayılan yeni bir pencere açılıyor . Tarayıcının yapılandırmasına bağlıdır. Bu bakınız ağır : upvoted cevabı stackoverflow.com/a/4907854/220060
nalply

@nalply Bu komutun bağlantıyı yeni bir pencerede açtığına katılıyorum , ancak bugün bilinen tüm tarayıcının sekmeler olarak yeni pencereler açtığı konusunda hemfikir olmalısınız, bu yüzden sonuç aynı. Kullanıcı tarayıcıyı manuel olarak yeni bir pencere açacak şekilde yapılandırdıysa, yaptığı bir seçimdir ve bunu önlemek için hiçbir şey yapamayız.
Strae

23

[Gönder] ve [önizleme] düğmelerim var, önizlemenin veritabanına devam etmeden gönderilen form verilerinin yazdırma görünümünü göstermesini istiyorum. Bu nedenle [önizleme] 'nin yeni bir sekmede açılmasını ve verileri aynı pencerede / sekmede göndermesini istiyorum.

<button type="submit" id="liquidacion_save" name="liquidacion[save]" onclick="$('form').attr('target', '');">Save</button></div>    <div>
<button type="submit" id="liquidacion_Previsualizar" name="liquidacion[Previsualizar]" onclick="$('form').attr('target', '_blank');">Preview</button></div>  

16

formtargetHTML5 ile tanıtılan yeni düğme özniteliğini kullanmak da mümkündür .

<form>
  <input type="submit" formtarget="_blank"/>
</form>


8

Bu jQuery etiketli olduğundan, başarı fonksiyonunuza bir şey yapışmasını istediğinizi varsayacağım?

success: function(data){
    window.open('http://www.mysite.com/', '_blank');
}


2

Bu da harika çalışır, yeni bir sekme işleyicisi gönderirken başka bir şey yapabilirsiniz.

<form target="_blank">
    <a href="#">Submit</a>
</form>

<script>
    $('a').click(function () {
        // do something you want ...

        $('form').submit();
    });
</script>

1

Tarayıcı seçenekleriniz yeni bir sekmede yeni pencereler açacak şekilde ayarlanmış olmalıdır, aksi takdirde yeni bir tarayıcı penceresi açılır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.