2012-06-14 3 views
1

Мне нужно открыть новое окно для моей печати, может ли кто-нибудь дать мне знать, как это сделать?Открытие нового окна с помощью кнопки?

Моя кнопка Нажмите Код:

Мой window.location работает, но не могу использовать метод window.open

$('.btnFromIndexPrint').click(function() { 
     if (document.URL.indexOf('index') > -1) { 
      // window.location = '../Print/' + $(this).attr('id'); 
      window.open = '../Print/' + $(this).attr('id'); 
     } else { 
      //window.location = 'Contract/Print/' + $(this).attr('id'); //Redirect from Index page to print action 
      window.open = 'Contract/Print/' + $(this).attr('id'); 
     } 

    }); 

Мой HTML:

Я знаю, что есть нечто, называемое target = "blank" id не думает, что это сработает.

<input type="button" value="Print" class="btnFromIndexPrint" id="@item.SalesContractId"/> 

Как бы я открыть редирект на новую страницу?

Важно !!!!!!!

return RedirectToAction("Print", new { id = contractInstance.SalesContractId }); 

ответ

4

должен быть:

window.open(url_or_your_page); 

См: Example

+0

Спасибо, что сработало: window.open ('Contract/Print /' + $ (this) .attr ('id')); – Pomster

+0

Вы можете отметить это как принятый ответ, если это соответствует вашим потребностям ... :) –

+0

Я буду, вы можете нажать только галочку после 10 минут tho :) Не могли бы вы проверить новый маленький вопрос в нижней части вопроса. – Pomster

0

Вы должны попробовать:

window.open(url, [window name], "height=x,width=y"); 

Если указана ширина/высота, она открывает его в новом window.See window.open.

1

Синтаксис для window.location является

window.location = "url"; 

Например:

window.location ="http://www.mozilla.org"; 

, таким образом, он работает нормально в вашем коде.

Но синтаксис window.open() является

window.open(URL, windowName[, windowFeatures]) 

Например:

window.open ("http://www.javascript-coder.com","mywindow","status=1"); 

Там проблема была в вашем синтаксисе.

Надеюсь, это поможет.

+0

+1 Да, спасибо :) – Pomster

0

Для начала, я надеюсь, что вы включили вышеуказанный код в функцию document.ready jQuery или поместили код внизу страницы. Это связано с тем, что если указанная кнопка печати не была загружена в DOM, селектор ($) не найдет его и, как таковой, вы не будете прикреплены к нему.

Во-вторых, window.open является функцией и не следует назначать как переменную (которую вы сделали выше).Другими словами, это

window.open(parameters); //NOT window.open = value; 

См. Мой пример кода ниже, который является более или менее коррекцией и оптимизацией для вас выше.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Window.Open</title> 
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> 
    <script type="text/javascript"> 
    //@Author: Prof. No Time 
    $(document).ready(function(){ 
     $('.btnFromIndexPrint').click(function() { 
     var urlToOpen = ''; 
     var docURL = document.URL; 

     if (docURL.indexOf('index') > -1) { 
      urlToOpen = '../Print/' + $(this).attr('id'); 
     } 
     else { 
      urlToOpen = 'Contract/Print/' + $(this).attr('id'); 
     } 

     //alert('urlToOpen > ' + urlToOpen); 
     if (urlToOpen != '') window.open(urlToOpen); 
     }); 
    }); 
    </script> 
</head> 

<body> 
    <input type="button" value="Print" class="btnFromIndexPrint" id="@item.SalesContractId"/> 
</body> 
</html> 

Наконец, я советую против использования такого рода идентификаторов, как показано выше (@ item.SalesContractId). Я хочу верить, что где-то эта стоимость должна была быть заменена обработкой на стороне сервера?

Надеюсь, это поможет.

+0

Что касается нового маленького вопроса в нижней части основного вопроса. Мне будет немного больше объяснять. window.open() уже открывает ссылку в новом окне/вкладке. Пожалуйста, добавьте более подробную информацию или задайте новый вопрос и укажите мне ссылку. – profnotime

Смежные вопросы